Objets métiers : comment alimenter certains champs sur une ligne de vente lors de la création d'un document de vente avec le processus IPMDocument

SOLVED

Bonjour,

Je ne trouve pas comment alimenter le code Affaire, ainsi que les informations libres lors la création de la ligne, et il y a un moment que je cherche avec toutes les docs à ma disposition.

Il y a bien un champ Comptea, mais le fait d'y affecter la valeur du code affaire ne fonctionne pas.

Quant aux informations libres, je ne peux modifier ces champs que sur un objet persistant.

Merci pour vos lumières.

  • Bonjour  

    Merci d'avoir utilisé Community Hub.

    Nous remarquons qu'il n'y a malheureusement pas eu de réponse à votre question de la part des autres membres de la communauté.

    Nous invitons vivement chacun des membres de la communauté à être actifs et à répondre sur les forums. Les réponses sont l’affaire de tous et permettent aux forums de grandir, et aux utilisateurs de mieux connaitre et utiliser leur solution.
    Aussi, n’hésitez pas vous-même à répondre aux questions qui pourraient être posées et qui seraient en attente de réponse.

    Nous espérons une réponse prochaine à votre demande.

    Dans l’attente, et pour vous aiguiller davantage, vous pouvez consulter l’assistance ou certains articles sur la base de Connaissance Sage KB : https://fr-kb.sage.com.

    Floriane

  • 0
    verified answer

    Bonjour M. COSTES,

    Effectivement, par défaut, seule les valeurs des  informations libres des objets persistants peuvent être modifiées par les Objets Métiers.

    Par contre, depuis la version 9.02 des Objets Métiers, il est maintenant possible d'utiliser les informations libres avec le processus IPMDocument, avant sa validation, alors que la ligne est non persistante. 

    Concernant l'affectation d'un d'une section analytique d'un plan affaire à une ligne de document de vente, l'affectation s'effectue correctement en version 10.05 avec cet exemple de code :

    IBPAnalytique3 om_PlanAna = om_BaseCial.CptaApplication.FactoryAnalytique.ReadIntitule("Affaires");
    var om_DocVenteLigne = (IBODocumentVenteLigne3)om_DocVente.FactoryDocumentLigne.Create();
    om_DocVenteLigne.SetDefaultArticleReference("GRAVURE", 1);
    om_DocVenteLigne.CompteA = om_BaseCial.CptaApplication.FactoryCompteA.ReadNumero(om_PlanAna, "953WEB");
    om_DocVenteLigne.WriteDefault();

    Si vous rencontrez des difficultés avec le développement Objets Métiers et que vous possédez un contrat Sage Services Pro, vous pouvez directement nous contacter par ticket Zendesk (https://sagefr.zendesk.com/).

    Par ailleurs, nous animons de façon régulières des formations de découverte et avancées sur les Objets Métiers :

    https://sageu.csod.com/ui/lms-learning-details/app/event/d4b24b5b-6360-46a4-b287-59a3f48174b1

    sageu.csod.com/.../2549f050-b155-45fb-b8a8-89be3e691336

    Cordialement,

    Thierry

  • SUGGESTED

    Bonjour Laurent

    Les informations libres, quelque soit la table, ne peuvent être écrite que sur un objet persistant. Il faut donc créer l'objet (document, ligne de document, ...) puis le modifier pour affecter des valeurs aux informations libres. C'est le même mécanisme que la gestion commerciale.

    Le code affaire est un objet IBOCompteA3 qui doit être créé avant de le lier à une ligne de document.

    Cordialement

  • Bonjour  ,

    Faites nous savoir si les réponses deTHJO et Guillaume LEJEUNE ont été utiles en les marquant comme vérifiées.

    Pour cela, au niveau de la réponse apportée, cliquer sur l'option "Vérifier la réponse".

    Cela aura pour effet de marquer la réponse en vert et de permettre aux autres membres de la communauté, ou aux personnes qui auraient également le besoin de voir que cela a fonctionné.

    Merci d'avoir utilisé la communauté.

    Floriane