Certains problèmes se produisent après l’installation de la fonctionnalité de file d’attente italienne dans la version italienne de Microsoft Dynamics NAV 2009


Cet article s’applique à Microsoft Dynamics NAV pour le paramètres régionaux de langue italien (it).

Symptômes


Supposons que vous installez la fonctionnalité italien file d’attente dans la version italienne de Microsoft Dynamics NAV 2009. Après avoir compilé de tous les objets de la fonctionnalité de file d’attente italien, vous les symptômes suivants :
  • Lorsque vous exécutez l’écran de la bande de Lifo (12129), le message d’erreur suivant s’affiche :
    Vous avez spécifié une variable inconnue. Moyenne des coûts définissent la variable sous 'Global C/AL symbols'.
  • Lorsque vous exécutez le rapport sur le calcul de Lifo (12114), le message d’erreur suivant s’affiche :
    Vous avez spécifié une variable inconnue. Moyenne des coûts définissent la variable sous 'Global C/AL symbols'.
  • Lorsque vous exécutez la page bande de Lifo (12129), le message d’erreur suivant s’affiche :
    Vous avez spécifié une variable inconnue. Moyenne des coûts définissent la variable sous 'Global C/AL symbols'.
En outre, la table en-tête vente (36), de la table en-tête achat (38) et de la table en-tête Service (5900) contient une constante de texte qui utilise des nombre 12000. Toutefois, la constante de texte est également utilisée dans un autre correctif.
Ce problème se produit dans les produits suivants :
  • La version italienne de Microsoft Dynamics NAV 2009 R2
  • La version italienne de Microsoft Dynamics NAV 2009 Service Pack 1(SP1)

Cause


Ces problèmes se produit parce qu’un champ de la table (12130) est supprimé. Toutefois, le champ s’arrête toujours sous la forme de bande de Lifo (12129).

Résolution


Informations sur le correctif

Un correctif pris en charge est désormais disponible auprès de Microsoft. Toutefois, il est conçu uniquement pour corriger le problème décrit dans cet article. Il s’applique uniquement aux systèmes rencontrant ce problème spécifique. Ce correctif peut subir des tests supplémentaires. Par conséquent, si vous n’êtes pas sérieusement concerné par ce problème, nous vous recommandons d’attendre le prochain service pack Microsoft Dynamics NAV ou la prochaine version de Microsoft Dynamics NAV qui comprendra ce correctif.

Remarque Dans certains cas, les frais généralement encourus pour la prise en charge des appels peuvent être annulés si un technicien du Support technique pour Microsoft Dynamics et les produits associés détermine qu’une mise à jour spécifique peut résoudre votre problème. Les coûts habituels du support technique s’appliqueront aux autres questions et problèmes qui ne relèvent pas de la mise à jour spécifique en question.


Informations sur l’installation

Microsoft fournit des exemples de programmation à titre d'illustration uniquement, sans garantie expresse ou implicite. Ceci inclut, mais n'est pas limité à, les garanties implicites de qualité marchande ou d'adéquation à un usage particulier. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les ingénieurs du support technique Microsoft peuvent vous expliquer les fonctionnalités d'une procédure particulière, mais ils ne modifieront pas ces exemples pour fournir des fonctionnalités supplémentaires ou créer des procédures répondant à vos besoins spécifiques.

Remarque Avant d’installer ce correctif, vérifiez que tous les utilisateurs du client Microsoft Navision sont enregistrés sur le système. Cela inclut les utilisateurs du client Microsoft Navision Application Services (NAS). Vous devez être le seul utilisateur client connecté lors de l’implémentation de ce correctif.

Pour appliquer ce correctif, vous devez posséder une licence développeur.

Il est recommandé que le compte d’utilisateur dans la fenêtre Logins Windows ou dans la fenêtre Logins base de données est affecté à l’ID de rôle « SUPER ». Si le compte d’utilisateur ne peut pas être affecté à l’ID de rôle « SUPER », vous devez vérifier que le compte d’utilisateur dispose des autorisations suivantes :
  • L’autorisation de modification pour l’objet que vous allez modifier.
  • L’autorisation d’exécution pour l’objet ID objet système 5210 et pour l’objet ID objet système 9015 .


Remarque Vous n’êtes pas obligé de disposer des droits pour les banques de données excepté si vous devez réparer des données.

Modifications du code

Remarque Toujours tester le code des correctifs dans un environnement contrôlé, avant d'appliquer les correctifs à vos ordinateurs de production.
Pour résoudre ce problème, procédez comme suit :
  1. Modifiez le code dans les Variables globales dans la table en-tête vente (36) comme suit :
    Code existant
    ...VATBusPostingGroup@1130002 : Record 323;
    CustBankAccount@1130001 : Record 287;
    ShipmentMethod@1130000 : Record 10;

    // Delete the following line.
    Text12100@1130020 : TextConst 'ENU=The customer has an active VAT exemption and VAT Bus. Posting Group hasn''t "Check VAT Exemption". Do you want to continue?;ITA=Il cliente ha un''esenzione IVA attiva e in Cat. reg. business IVA non Š selezionata l''opzione "Seleziona esenzione IVA". Continuare?';

    Text12101@1130021 : TextConst 'ENU=It is not possible to insert a customer with VAT exemption if an active VAT exemption doesn''t exist.;ITA=Impossibile inserire un cliente con esenzione IVA se non esiste un''esenzione IVA attiva.';

    PROCEDURE InitRecord@10();
    ...
    Code de remplacement
    ...VATBusPostingGroup@1130002 : Record 323;
    CustBankAccount@1130001 : Record 287;
    ShipmentMethod@1130000 : Record 10;

    // Add the following line.
    Text12102@1130020 : TextConst 'ENU=The customer has an active VAT exemption and VAT Bus. Posting Group hasn''t "Check VAT Exemption". Do you want to continue?;ITA=Il cliente ha un''esenzione IVA attiva e in Cat. reg. business IVA non Š selezionata l''opzione "Seleziona esenzione IVA". Continuare?';

    Text12101@1130021 : TextConst 'ENU=It is not possible to insert a customer with VAT exemption if an active VAT exemption doesn''t exist.;ITA=Impossibile inserire un cliente con esenzione IVA se non esiste un''esenzione IVA attiva.';

    PROCEDURE InitRecord@10();
    ...
  2. Modifiez le code dans la fonction CheckVATExemption de la table en-tête vente (36) comme suit :
    Code existant
    ...IF HideValidationDialog OR NOT GUIALLOWED THEN
    Confirmed := TRUE
    ELSE

    // Delete the following line.
    Confirmed := CONFIRM(Text12100,TRUE);

    EXIT(Confirmed);
    END;
    END ELSE
    ...
    Code de remplacement
    ...IF HideValidationDialog OR NOT GUIALLOWED THEN
    Confirmed := TRUE
    ELSE

    // Add the following line.
    Confirmed := CONFIRM(Text12102,TRUE);

    EXIT(Confirmed);
    END;
    END ELSE
    ...
  3. Modifiez le code dans les Variables globales dans la table en-tête achat (38) comme suit :
    Code existant
    ...Text1130017@1130012 : TextConst 'ENU=%1 cannot be greater than %2;ITA=%1 non pu• essere maggiore di %2';
    Text1130018@1130018 : TextConst 'ENU=A Posting No. has been assigned to this record. You cannot delete this document.;ITA=Un nr. di registrazione Š stato assegnato al record. Non Š possibile eliminare il documento.';
    Text1130019@1130019 : TextConst 'ENU=You cannot update the order line because the order line is associated with production order %1.;ITA=Impossibile aggiornare la riga ordine poich‚ Š associata all''ordine di produzione %1.';

    // Delete the following line.
    Text12100@1130020 : TextConst 'ENU=The vendor has an active VAT exemption and VAT Bus. Posting Group hasn''t "Check VAT Exemption". Do you want to continue?;ITA=Il fornitore ha un''esenzione IVA attiva e in Cat. reg. business IVA non Š selezionata l''opzione "Seleziona esenzione IVA". Continuare?';

    Text12101@1130021 : TextConst 'ENU=It is not possible to insert a vendor with VAT exemption if an active VAT exemption doesn''t exist.;ITA=Impossibile inserire un fornitore con esenzione IVA se non esiste un''esenzione IVA attiva.';PROCEDURE InitRecord@10();
    ...
    Code de remplacement
    ...Text1130017@1130012 : TextConst 'ENU=%1 cannot be greater than %2;ITA=%1 non pu• essere maggiore di %2';
    Text1130018@1130018 : TextConst 'ENU=A Posting No. has been assigned to this record. You cannot delete this document.;ITA=Un nr. di registrazione Š stato assegnato al record. Non Š possibile eliminare il documento.';
    Text1130019@1130019 : TextConst 'ENU=You cannot update the order line because the order line is associated with production order %1.;ITA=Impossibile aggiornare la riga ordine poich‚ Š associata all''ordine di produzione %1.';

    // Add the following line.
    Text12102@1130020 : TextConst 'ENU=The vendor has an active VAT exemption and VAT Bus. Posting Group hasn''t "Check VAT Exemption". Do you want to continue?;ITA=Il fornitore ha un''esenzione IVA attiva e in Cat. reg. business IVA non Š selezionata l''opzione "Seleziona esenzione IVA". Continuare?';

    Text12101@1130021 : TextConst 'ENU=It is not possible to insert a vendor with VAT exemption if an active VAT exemption doesn''t exist.;ITA=Impossibile inserire un fornitore con esenzione IVA se non esiste un''esenzione IVA attiva.';

    PROCEDURE InitRecord@10();
    ...
  4. Modifiez le code dans la fonction CheckVATExemption de la table en-tête achat (38) comme suit :
    Code existant
    ...IF HideValidationDialog OR NOT GUIALLOWED THEN
    Confirmed := TRUE
    ELSE

    // Delete the following line.
    Confirmed := CONFIRM(Text12100,TRUE);

    EXIT(Confirmed);
    END;
    END ELSE
    ...
    Code de remplacement
    ...IF HideValidationDialog OR NOT GUIALLOWED THEN
    Confirmed := TRUE
    ELSE

    // Add the following line.
    Confirmed := CONFIRM(Text12102,TRUE);

    EXIT(Confirmed);
    END;
    END ELSE
    ...
  5. Modifiez le code dans les Variables globales dans la table en-tête Service (5900) comme suit :
    Code existant
    ...Text1130018@1130013 : TextConst 'ENU=%1 cannot be greater than %2;ITA=%1 non pu• essere maggiore di %2';
    Text1130019@1130050 : TextConst 'ENU=A Posting No. has been assigned to this record. You cannot delete this document.;ITA=Un nr. di registrazione Š stato assegnato al record. Non Š possibile eliminare il documento.';
    GenJnILine@1130100 : Record 81;

    // Delete the following line.
    Text12100@1130018 : TextConst 'ENU=The customer has an active VAT exemption and VAT Bus. Posting Group hasn''t "Check VAT Exemption". Do you want to continue?;ITA=Il cliente ha un''esenzione IVA attiva e in Cat. reg. business IVA non Š selezionata l''opzione "Seleziona esenzione IVA". Continuare?';

    Text12101@1130000 : TextConst 'ENU=It is not possible to insert a customer with VAT exemption if an active VAT exemption doesn''t exist.;ITA=Impossibile inserire un cliente con esenzione IVA se non esiste un''esenzione IVA attiva.';

    PROCEDURE AssistEdit@1(OldServHeader@1000 : Record 5900) : Boolean;
    ...
    Code de remplacement
    ...Text1130018@1130013 : TextConst 'ENU=%1 cannot be greater than %2;ITA=%1 non pu• essere maggiore di %2';
    Text1130019@1130050 : TextConst 'ENU=A Posting No. has been assigned to this record. You cannot delete this document.;ITA=Un nr. di registrazione Š stato assegnato al record. Non Š possibile eliminare il documento.';
    GenJnILine@1130100 : Record 81;

    // Add the following line.
    Text12102@1130018 : TextConst 'ENU=The customer has an active VAT exemption and VAT Bus. Posting Group hasn''t "Check VAT Exemption". Do you want to continue?;ITA=Il cliente ha un''esenzione IVA attiva e in Cat. reg. business IVA non Š selezionata l''opzione "Seleziona esenzione IVA". Continuare?';

    Text12101@1130000 : TextConst 'ENU=It is not possible to insert a customer with VAT exemption if an active VAT exemption doesn''t exist.;ITA=Impossibile inserire un cliente con esenzione IVA se non esiste un''esenzione IVA attiva.';

    PROCEDURE AssistEdit@1(OldServHeader@1000 : Record 5900) : Boolean;
    ...
  6. Modifiez le code dans la fonction CheckVATExemption de la table en-tête Service (5900) comme suit :
    Code existant
    ...IF HideValidationDialog OR NOT GUIALLOWED THEN
    Confirmed := TRUE
    ELSE

    // Delete the following line.
    Confirmed := CONFIRM(Text12100,TRUE);

    EXIT(Confirmed);
    END;
    END ELSE
    ...
    Code de remplacement
    ...IF HideValidationDialog OR NOT GUIALLOWED THEN
    Confirmed := TRUE
    ELSE

    // Add the following line.
    Confirmed := CONFIRM(Text12102,TRUE);

    EXIT(Confirmed);
    END;
    END ELSE
    ...
  7. Modifiez le code dans les contrôles dans le formulaire de bande de Lifo (12129) comme suit :
    Code existant
    ...InPage=1;
    SourceExpr="Increment Value" }
    { 1130025;Label ;440 ;3190 ;3300 ;440 ;ParentControl=1130024 }

    // Delete the following lines.
    { 1130026;TextBox ;3850 ;3740 ;2750 ;440 ;ParentControl=1130001;
    InPage=1;
    SourceExpr="Average Cost" }
    { 1130027;Label ;440 ;3740 ;3300 ;440 ;ParentControl=1130026 }
    // End of the lines.

    { 1130028;TextBox ;12980;990 ;2750 ;440 ;ParentControl=1130001;
    InPage=1;
    SourceExpr="Qty not Invoiced" }
    ...
    Code de remplacement
    ...InPage=1;
    SourceExpr="Increment Value" }
    { 1130025;Label ;440 ;3190 ;3300 ;440 ;ParentControl=1130024 }
    { 1130028;TextBox ;12980;990 ;2750 ;440 ;ParentControl=1130001;
    InPage=1;
    SourceExpr="Qty not Invoiced" }
    ...
  8. Modifiez le code dans la fonction NewLIFOBand dans l’état de calcul de Lifo (12114) comme suit :
    Code existant
    ...LIFOBand."Invoiced Amount" := InvoicedAmount;
    //LIFOBand."Location Code" := LocationCode; For future implementation
    LIFOBand."User ID" := USERID;

    // Delete the following lines.
    IF ItemQty <> 0 THEN
    LIFOBand."Average Cost" := AdjCost / ItemQty;
    // End of the lines.

    LIFOBand.INSERT;
    NextEntryNo := NextEntryNo + 1;
    END;
    ...
    Code de remplacement
    ...LIFOBand."Invoiced Amount" := InvoicedAmount;
    //LIFOBand."Location Code" := LocationCode; For future implementation
    LIFOBand."User ID" := USERID;
    LIFOBand.INSERT;
    NextEntryNo := NextEntryNo + 1;
    END;
    ...

Conditions préalables

Vous devez disposer de l’un des produits suivants est installé pour appliquer ce correctif :
  • La version italienne de Microsoft Dynamics NAV 2009 R2
  • La version italienne de Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Informations sur la suppression

Vous ne pouvez pas supprimer ce correctif.

État


Microsoft a confirmé l'existence de ce problème dans les produits Microsoft répertoriés dans la section « S'applique à ».
Remarque Il s’agit d’un article de « Dernière minute » créé directement à partir de l’organisation de support technique de Microsoft. Les informations contenues dans ce document sont fournies en l'état, en réponse à des problèmes nouveaux. En raison de la rapidité de leur mise à disposition, les documents peuvent contenir des erreurs typographiques et peuvent être révisés à tout moment sans préavis. Consultez les Conditions d’utilisation pour d’autres considérations.