Hitro objavljene članke pružaju informacije izravno iz unutar organizacije podršku Microsoft. Informacije koje se spominju u ovom dokumentu nalaze se kreira odgovor rastućih ili jedinstvene teme ili je namijenjen nadopunjava druge informacije znanja.
Simptomi
Kada desnom tipkom miša kliknite u dijaloškom okviru ruta kartica temeljnice u Microsoft Dynamics AKSIMUM 2009 i zatim instalacijski program kako biste dodali stupac konfiguracije na kartici Pregled , ne prikazuju konfiguracije sastavnica (BOM) ispravno u dijaloškom okviru ruta kartica temeljnice .
Uzrok
Taj se problem pojavljuje jer Microsoft Dynamics AKSIMUM ne podržava dodavanje odgođeno povezanom izvoru podataka kontroli rešetke.
Rješenje
Informacije o hitnim popravkom
Podržani hitni popravak sada je dostupna iz Microsoft. Međutim, njegova je namjena samo ispravak problema opisanog u ovom članku. Primijenite ga samo na sustave u kojima se pojavljuje upravo taj problem. Taj hitni popravak možda dodatno testirati. Stoga, ako vam se ne uzrokuje taj problem, preporučujemo da pričekate sljedeći servisni paket za Microsoft Dynamics AKSIMUM 2009 ili sljedeće verzije koja sadrži taj hitni popravak. Napomena U posebnim slučajevima, troškove koji su službe za podršku pozive možda biti otkazana ako Professional za tehničku podršku za Microsoft Dynamics i povezane proizvode određuje da određeno ažuriranje riješiti problem. Uobičajeni podršku troškove će se primijeniti na dodatna pitanja i probleme koji kvalifikujete za određeno ažuriranje u pitanju.Ovaj hitni popravak trebalo naći u sklopu Service Pack 2 za Microsoft Dynamics AKSIMUM 2009.
Informacije o instalaciji
Prije nego što instalirate taj hitni popravak, provjerite je li korisnici klijenta Microsoft Dynamics AKSIMUM su odjavljeni sustav. Trebao bi biti samo klijent korisnika koji je prijavljen kada implementirate taj hitni popravak. Implementirati taj hitni popravak, morate imati licencu za razvojne inženjere.Napomena Preporučujemo da korisnički račun u prozoru prijave u sustav Windows ili u prozoru prijave u bazu podataka biti član grupe Administratori korisnika u sustavu Microsoft Dynamics AKSIMUM.
Kod promjene
Microsoft navodi primjere programiranja samo, radi ilustracije bez jamstva, izražena ili implicitnih. To uključuje, ali nije ograničen na, implicirana jamstva utrživosti ili prikladnosti za određenu svrhu. Ovaj članak podrazumijeva da poznajete programski jezik koji se koristi u primjeru i alate koji se koriste za stvaranje i ispravljanje pogrešaka u postupcima. Microsoftovi inženjeri za podršku mogu objasniti funkciju određenog postupka. Međutim, oni će neće mijenjati te primjere da pružaju dodaje funkcionalnost niti prilagođavati postupke vašim potrebama.Uvijek test Šifra rješava u nadziranom okruženju prije primjene popravaka računala proizvodnje.Da biste primijenili taj hitni popravak, slijedite ove korake:
-
Promijeniti šifru u metodu datasourceWritePre u klasi ProdJournalFormTransRoute kako slijedi:Šifra postojeći
void datasourceWritePre(){ ; if (prodJournalRoute.ProdPickList && prodJournalRoute.OprPriority && !prodJournalRoute.ProdPickListJournalId) prodJournalRoute.ProdPickList = NoYes::No; if (prodJournalRoute.ProdReportFinished) prodJournalRoute.ProdInventDimId = InventDim::findOrCreate(inventDim).InventDimId; else // Modify the following line. prodJournalRoute.ProdInventDimId = ''; prodJournalRoute.ProdInventDimId = ''; super();}
Zamjena Šifra
void datasourceWritePre(){ ; if (prodJournalRoute.ProdPickList && prodJournalRoute.OprPriority && !prodJournalRoute.ProdPickListJournalId) prodJournalRoute.ProdPickList = NoYes::No; if (prodJournalRoute.ProdReportFinished) prodJournalRoute.ProdInventDimId = InventDim::findOrCreate(inventDim).InventDimId; else // The following line is modified. prodJournalRoute.ProdInventDimId = InventDim::inventDimIdBlank(); prodJournalRoute.ProdInventDimId = ''; super();}
-
Promijeniti šifru u metodu fieldModifiedProdReportFinishedPost u klasi ProdJournalFormTransRoute kako slijedi:Šifra postojeći
void fieldModifiedProdReportFinishedPost(){ InventDim emptyInventDim; ; if (prodJournalRoute.ProdReportFinished) { if (! prodJournalRoute.ProdInventDimId) inventDim_ds.create(); inventDim.data(InventDim::find(ProdTable::find(prodJournalRoute.ProdId).InventDimId)); } else inventDim.data(emptyInventDim); inventDim_ds.setCurrent();}
Zamjena Šifra
void fieldModifiedProdReportFinishedPost(){ // Add the following line. InventDim emptyInventDim = InventDim::find(InventDim::inventDimIdBlank()); InventDim emptyInventDim; ; if (prodJournalRoute.ProdReportFinished) { if (! prodJournalRoute.ProdInventDimId) inventDim_ds.create(); inventDim.data(InventDim::find(ProdTable::find(prodJournalRoute.ProdId).InventDimId)); } else inventDim.data(emptyInventDim); inventDim_ds.setCurrent();}
-
Promijeniti šifru u metodu enableFieldsActive u ProdJournalTransRoute obrasca kako slijedi:Šifra postojeći
void enableFieldsActive(){ prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,EmplId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryHoursId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryQtyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectHour.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectQuantity.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed());}
Zamjena Šifra
void enableFieldsActive(){ // Add the following lines. int i; container enabledDimFields = InventDim::dimEnabledFieldList(); container dimFields = InventDim::dimFieldList(); ; prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,EmplId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryHoursId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryQtyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectHour.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectQuantity.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); // Add the following lines. for(i = 0; i < conlen(dimFields) ; i++) { if (inventDim_DS.object(conpeek(dimFields, i))) { if (prodJournalRoute.ProdInventDimId == InventDim::inventDimIdBlank()) { inventDim_DS.object(conpeek(dimFields,i)).enabled(false); } else { inventDim_DS.object(conpeek(dimFields,i)).enabled(confind(enabledDimeFields,i) != 0); } } }}
-
Promijenite vrijednost svojstva objekta InventDim podataka izvor u obrascu ProdJournalTransRoute kako slijedi:
-
Promijeniti vrijednost svojstva LinkTypeInnerJoin.
-
Nepromijenite vrijednost svojstva DelayActive .
-
-
Dodajte sljedeći kôd u objekt "\Forms\ProdJournalTransRoute\DataSources\InventDim\Methods\ validateWrite".
public boolean validateWrite(){ boolean ret; ; if (inventDim.inventDimId == InventDim::inventDimIdBlank()) return true; ret = super(); return ret;}
-
Promijeniti šifru u objekt "\Forms\ProdJournalTransRoute\DataSources\InventDim\Methods\ pisanje" kako slijedi:Šifra postojeći
void write(){ ; prodJournalRoute_ds.write();}
Zamjena Šifra
void write(){ ; prodJournalRoute_ds.write(); // Add the following line. element.enableFieldsActive();}
-
Šifru promijeniti u "\Forms\ProdJournalTransRoute\DataSources\ProdJournalRoute\Methods\active" kako slijedi:Šifra postojeći
int active(){ int ret; ret = super(); journalFormTrans.datasourceActivePost(); if (prodJournalRoute.isProjMethodConsumed()) { skipWrite = true; prodJournalRouteProjHour_ds.executeQuery(); prodJournalRouteProjQuantity_ds.executeQuery(); skipWrite = false; } element.enableFieldsActive(); return ret;}
Zamjena Šifra
int active(){ int ret; // Add the following lines. ; journalFormTrans.updateDesign(InventDimFormDesignUpdate::Init); ret = super(); journalFormTrans.datasourceActivePost(); if (prodJournalRoute.isProjMethodConsumed()) { skipWrite = true; prodJournalRouteProjHour_ds.executeQuery(); prodJournalRouteProjQuantity_ds.executeQuery(); skipWrite = false; } element.enableFieldsActive(); return ret;}
-
Promijeniti šifru u metodu enableFieldsActive u ProdJournalTransJob obrasca kako slijedi:Šifra postojeći
void enableFieldsActive(){ prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,EmplId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryHoursId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryQtyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectHour.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectQuantity.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed());}
Zamjena Šifra
void enableFieldsActive(){ // Add the following lines. int i; container enabledDimFields = InventDim::dimEnabledFieldList(); container dimFields = InventDim::dimFieldList(); ; prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,EmplId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryHoursId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRoute_ds.object(fieldnum(ProdJournalRoute,CategoryQtyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectHour.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjHour_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); projectQuantity.visible(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjLinePropertyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); prodJournalRouteProjQuantity_ds.object(fieldnum(ProdJournalRouteProj,ProjSalesCurrencyId)).mandatory(prodJournalRoute.isProjMethodConsumed()); // Add the following lines. for(i = 0; i < conlen(dimFields) ; i++) { if (inventDim_DS.object(conpeek(dimFields, i))) { if (prodJournalRoute.ProdInventDimId == InventDim::inventDimIdBlank()) { inventDim_DS.object(conpeek(dimFields,i)).enabled(false); } else { inventDim_DS.object(conpeek(dimFields,i)).enabled(confind(enabledDimeFields,i) != 0); } } }}
-
Promijenite vrijednost svojstva objekta InventDim podataka izvor u obrascu ProdJournalTransJob kako slijedi:
-
Promijeniti vrijednost svojstva LinkTypeInnerJoin.
-
Nepromijenite vrijednost svojstva DelayActive .
-
-
Dodajte sljedeći kôd u objekt "\Forms\ProdJournalTransJob\DataSources\InventDim\Methods\ validateWrite".
public boolean validateWrite(){ boolean ret; ; if (inventDim.inventDimId == InventDim::inventDimIdBlank()) return true; ret = super(); return ret;}
-
Promijeniti šifru u objekt "\Forms\ProdJournalTransJob\DataSources\InventDim\Methods\ pisanje" kako slijedi:Šifra postojeći
void write(){ ; prodJournalRoute_ds.write();}
Zamjena Šifra
void write(){ ; prodJournalRoute_ds.write(); // Add the following line. element.enableFieldsActive();}
-
Šifru promijeniti u "\Forms\ProdJournalTransJob\DataSources\ProdJournalRoute\Methods\active" kako slijedi:Šifra postojeći
int active(){ int ret; ret = super(); journalFormTrans.datasourceActivePost(); if (prodJournalRoute.isProjMethodConsumed()) { skipWrite = true; prodJournalRouteProjHour_ds.executeQuery(); prodJournalRouteProjQuantity_ds.executeQuery(); skipWrite = false; } element.enableFieldsActive(); return ret;}
Zamjena Šifra
int active(){ int ret; // Add the following lines. ; journalFormTrans.updateDesign(InventDimFormDesignUpdate::Init); ret = super(); journalFormTrans.datasourceActivePost(); if (prodJournalRoute.isProjMethodConsumed()) { skipWrite = true; prodJournalRouteProjHour_ds.executeQuery(); prodJournalRouteProjQuantity_ds.executeQuery(); skipWrite = false; } element.enableFieldsActive(); return ret;}
-
Promijeniti šifru u metodu Umetanje u tablici ProdJournalRoute kako slijedi:Šifra postojeći
void insert(){ ttsbegin; if (! this.LineNum) this.LineNum = ProdJournalRoute::lastLineNum(this.JournalId) + 1; if (this.OprFinished) this.JobFinished = NoYes::Yes; this.updateRouteConstantRelease(); super(); ttscommit;}
Zamjena Šifra
void insert(){ ttsbegin; if (! this.LineNum) this.LineNum = ProdJournalRoute::lastLineNum(this.JournalId) + 1; if (this.OprFinished) this.JobFinished = NoYes::Yes; // Add the following lines. if(!this.ProdInventDimId) this.ProdInventDimId = InventDim::inventDimIdBlank(); this.updateRouteConstantRelease(); super(); ttscommit;}
-
Promijeniti šifru u metodu initValue u tablici ProdJournalRoute kako slijedi:Šifra postojeći
void initValue(){ super(); this.TransDate= systemdateget();}
Zamjena Šifra
void initValue(){ super(); this.TransDate= systemdateget(); // Add the following line. this.ProdInventDimId = InventDim::inventDimIdBlank();}
Preduvjeti
Nema posebnih preduvjeta za primjenu tog hitnog popravka.
Potreba za ponovnim pokretanjem
Ne morate ponovo pokrenuti računalo nakon što primijenite ovaj hitni popravak.
Status
Microsoft je potvrdio da se taj problem pojavljuje u Microsoftovim proizvodima navedenima u odjeljku "Odnosi se na".
MICROSOFT I/ILI NJEGOVI DOBAVLJAČI NE DAJU NIKAKVA JAMSTVA O PRIKLADNOSTI, POUZDANOST ILI TOČNOST PODACI SADRŽANI U DOKUMENTIMA I POVEZANE GRAFIKE OBJAVLJENE NA OVOM WEB-MJESTU ("MATERIJALI") ZA BILO KOJU SVRHU. MATERIJALI MOGU UKLJUČIVATI TEHNIČKE NETOČNOSTI ILI TIPOGRAFSKE POGREŠKE I MOŽE SE REVIDIRATI U BILO KOJEM TRENUTKU BEZ PRETHODNE NAJAVE. U NAJVEĆOJ MOGUĆOJ MJERI DOPUŠTENOJ ZAKONOM, MICROSOFT I/ILI NJEGOVI DOBAVLJAČI DISCLAIM I ISKLJUČITI SVE REPREZENTACIJE JAMSTVA, PREDSTAVLJANJA I UVJETE LI EXPRESS, IMPLICIRANA ILI ZAKONSKA, UKLJUČUJUĆI ALI NE OGRANIČENA JAMSTVA, GARANCIJE, ILI UVJETI NASLOVA, PRETPOSTAVLJENA, ZADOVOLJAVAJUĆE UVJET ILI KVALITETE, UTRŽIVOSTI I PRIKLADNOSTI ZA ODREĐENU SVRHU ODNOSU MATERIJALI.