Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

Simptome

Atunci când încercați să remiteți sau să returnați o foaie de pontaj în Project timp și cheltuieli în portalul pentru firme din Microsoft Dynamics GP, primiți următorul mesaj de eroare:

Microsoft.Dynamics.Pma.PmaEntity.CostCategory [Cauză]Tranzacția bazei de date a fost abandonată din cauza unei operațiuni inconsistente cu baza de date. [Corecție] Corectați datele introduse și reîncercați tranzacția.

Cauză

Cauza 1

Această problemă poate apărea dacă următoarele condiții sunt adevărate:

  • Potecile de auditare din Microsoft Dynamics GP sunt instalate.

  • Auditarea este configurată într-un tabel PDK.

  • Utilizatorul de Portalul de business nu are acces la baza de date Audit.

Vedeți rezoluția 1.

Cauza 2

Această problemă poate apărea în cazul în care creați un șablon foaie de pontaj care conține un ID de proiect, apoi ștergeți ID-ul de proiect în Project Accounting în Microsoft Dynamics GP. Vedeți rezoluția 2.

Cauza 3

Această problemă poate apărea dacă un proiect dintr-un șablon foaie de pontaj are starea închis. Vedeți rezoluția 2.

Cauza 4

Această problemă poate apărea dacă există înregistrări deteriorate sau dublate în tabelul PDK10000 sau în tabelul PDK10001. Vedeți rezoluția 3.

Cauza 5

Această problemă poate apărea dacă câmpul Poziție nu este populat în înregistrarea angajatului. Acest lucru se poate întâmpla dacă utilizați Statul de plată din Canada. Vedeți rezoluția 4.

Cauza 6

Această problemă poate apărea dacă există un declanșator incorect în tabelul PDK10000, PDK10001, PDK10500 sau PDK10501. Vedeți rezoluția 5.

Cauza 7

Această problemă poate apărea dacă aveți indexuri de note atașate la document care nu există în tabelul coordonator de note de facturare sau în notele din tabelul Coordonator de note de facturare, care nu există în foaia de pontaj. Vedeți rezoluția 6.

Cauza 8

Această problemă poate apărea pentru foile de pontaj dacă perioadele dvs. de raportare s-au modificat în Inițializare foaie de pontaj atunci când există foi de pontaj neprocesate. Când creați o foaie de pontaj în BP care are aceeași combinație între ID angajat, An și Perioadă de raportare ca înainte, se adaugă automat -2 la sfârșitul numărului documentului. Dacă prima zi a perioadei de raportare sau perioadele de raportare propriu-zi în Inițializare foaie de pontaj au fost modificate după ce au fost introduse foile de pontaj și combinația ID angajat, An și Perioadă de raportare au fost utilizate înainte, omitem numărul obișnuit de document -1 și îl utilizăm pe unul cu -2 la sfârșit. 

Numărul documentului foaie de pontaj este construit utilizând metodologia "ID angajat-TS-Data" (adică 1018-TS-011609). 

Notați diferența ă de ceea ce este analizat pentru a găsi o foaie de pontaj dublată în paragraful de mai sus.

Așadar, atunci când introduceți o foaie de pontaj pentru ceea ce este acum #2 (dar a fost o altă perioadă înainte să se fi efectuat modificări la Configurarea foii de pontaj), portalul de business nu l-a "văzut" ca dublură, prin urmare nu s-a introdus -2 după acesta. În consecință, eroarea a apărut deoarece numărul foii de pontaj se afla deja în tabelul PDK10000.
Vedeți rezoluția 7.

Rezolvare

Soluţia 1

Pentru a rezolva această problemă, acordați acces la baza de date Audit. Pentru a face acest lucru, urmați acești pași:

  1. Faceți clic pe Start, indicați spre Toateprogramele , indicați spre Microsoft SQL Server, apoi faceți clic pe Microsoft SQL Server Management Studio.

  2. Extindeți Microsoft SQL Servers, extindeți SQL Server grup, apoi extindeți instanța bazei de date Microsoft SQL Server care este stocată baza de date de auditare.

  3. Extindeți Securitate, apoi faceți clic pe Conectări.

  4. Faceți clic dreapta pe utilizatorul Portalului de business, apoi faceți clic pe Proprietăți.

  5. Faceți clic pe fila Acces la bază de date, apoi faceți clic pe baza de date Audit.

  6. Faceți clic pentru a bifa caseta de selectare Permite pentru baza de date Audit.

  7. În lista Autorizare în rolul bazei de date, faceți clic pentru a bifa caseta de selectare DYNGRP.

  8. Faceți clic pe OK,apoi închideți Enterprise Manager.

Soluţia 2

Pentru a rezolva această problemă, creați un șablon nou de foaie de pontaj. Acest lucru îl va suprascrie pe cel existent. Pentru a face acest lucru, urmați acești pași:

  1. În Portal firmă, faceți clic pe Angajat,faceți clic Project timp,apoi faceți clic pe Nou.

  2. Creați o foaie de pontaj nouă, apoi faceți clic pe Salvare ca șablon.

  3. Când vi se solicită să înlocuiți șablonul existent, faceți clic pe OK.

Dacă nu puteți să creați din nou un șablon nou, astfel încât cel existent să fie înlocuit, utilizați SQL pentru a șterge șablonul existent din PDK00300 și PDK00301 pentru ID-ul de angajat afectat.

Soluţia 3

Pentru a rezolva această problemă, contactați asistența tehnică pentru Microsoft Dynamics și produsele asociate. Un specialist în asistență vă poate ajuta să ștergeți înregistrările deteriorate sau dublate din tabelul PDK10000 și din tabelul PDK10001. Pentru informații despre asistența tehnică pentru Microsoft Dynamics și produsele asociate, vizitați următorul site web Microsoft:

http://www.microsoft.com/dynamics/support/default.mspx

Rezolvarea 4

Chiar dacă este posibil să utilizați salariile din Canada, câmpurile Poziție (și Departament) din fișa de angajat din SUA trebuie completate. Pentru a rezolva această problemă, adăugați câmpul Poziție în fișa angajatului. Pentru a face acest lucru, urmați acești pași:

  1. În Microsoft Dynamics GP, faceți clic pe Fișe, indicați spre Salarii, apoi faceți clic pe Angajat.

  2. Introduceți ID-ul angajatului pentru care primiți mesajul de eroare.

  3. Introduceți o poziție validă în câmpul Poziție.

  4. Faceți clic pe butonul Salvare.


Rezolvarea 5

În mod implicit, nu există triggere în tabelele PDK10000 PDK10001, PDK10500 și PDK10501. Rulați acest script (înlocuind numele tabelului) în Microsoft SQL Server Management Studio pentru a vedea dacă există un trigger în tabel. Acest trigger poate avea nevoie să fie eliminat.

sp_helptrigger PDK10000 Dacă există un trigger, utilizați acest script pentru a-l elimina, apoi încercați documentul

Business Portal din nou. În acest exemplu, numele triggerului este PDK10000Update.

ALTER TABLE PDK10000 DISABLE TRIGGER PDK10000Update


Rezolvarea 6

Utilizând Microsoft SQL Server Management Studio, rulați acest script în baza de date a firmei dvs. pentru a determina dacă există note de facturare atribuite documentului care nu există în tabelul coordonator de note de facturare PDK.

selectați * din PDK10001 unde PDK_Billing_Note_ID nu (selectați PDK_Billing_Note_ID din PDK01601) și PDK_Billing_Note_ID <> '' Apoi, pentru a vedea dacă există note în tabelul Coordonator de note de facturare care nu se află într-un document, rulați acest

script.

selectați * din PDK01601 unde PDK_Billing_Note_ID nu este în (selectați PDK_Billing_Note_ID din PDK10001) și PDK_Billing_Note_ID nu este în (selectați PDK_Billing_Note_ID din PDK10501) Dacă oricare dintre aceste scripturi returnează rezultate, probabil că înregistrarea va trebui eliminată din tabel utilizând o inserție de

ștergere SQL. Contactați Asistența tehnică pentru asistență suplimentară, dacă este necesar.

Rezoluția 7

Examinați documentele foii de pontaj din tabelul PDK10000 pentru a vedea dacă numărul de document utilizat în prezent a fost utilizat înainte. Poate fi necesar ca foaia de pontaj anterioară să fie eliminată din tabelele PDK10000 și PDK10001 înainte ca această tranzacție nouă să poată fi introdusă dacă trebuie utilizată configurarea perioadei de raportare existente. Cealaltă opțiune ar fi să resetați informațiile perioadei de raportare la datele anterioare, apoi să creați o nouă foaie de pontaj.

Depanare suplimentară -

1. Rulați următorul script în Microsoft SQL Server Management Studio a vedea dacă există categorii de costuri în foaia de pontaj care au altă stare decât Deschidere sau Terminat. Nu puteți introduce tranzacții pentru categoriile de costuri în starea Estimare, Închisă sau În așteptare.

selectați a.PDK_TS_No, a.PAPROJNUMBER, a.PACOSTCATID din PDK10001 a
join PA01301 b
on
a.PAPROJNUMBER = b.PAPROJNUMBER
și a.PACOSTCATID = b.PACOSTCATID, unde
b.PASTAT nu in (1, 5)

2. Rulați următorul script în Microsoft SQL Server Management Studio a vedea dacă există proiecte pe foaia de pontaj care au altă stare decât Deschidere sau Finalizat. Nu puteți introduce tranzacții pentru proiecte în starea Estimare, Închisă sau În așteptare.

selectați a.PDK_TS_No, a.PAPROJNUMBER din PDK10001 a
join PA01201 b
on
a.PAPROJNUMBER = b.PAPROJNUMBER
where b.PASTAT not in (1, 5)

3. Verificați dacă valoarea din câmpul total cantități (PDK_Total_Quantity) din tabelul antet (PDK10000) se potrivesc cu suma cantității de linii (PDK_Quantity) din tabelul linie (PDK10001) pentru foaia de pontaj. Dacă acestea nu se potrivesc, foaia de pontaj este deteriorată și va trebui să fie eliminată din tabel utilizând SQL. Contactați Asistența tehnică pentru asistență suplimentară, dacă este necesar.

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?
Apăsând pe Trimitere, feedbackul dvs. va fi utilizat pentru a îmbunătăți produsele și serviciile Microsoft. Administratorul dvs. IT va avea posibilitatea să colecteze aceste date. Angajamentul de respectare a confidențialității.

Vă mulțumim pentru feedback!

×