OM, Renseigner code acheteur sur document d'achat

Cette section est consacrée aux développements d'applications interfacées avec les logiciels Sage.

Modérateurs: Super-Apogea, Super Modérateur

OM, Renseigner code acheteur sur document d'achat

de rnd » Mar 11 Fév 2020 19:42

Bonjour à tous,

Lors de la création/modification d'un document d'achat, je cherche comment renseigner le code collaborateur (code acheteur), j'ai un peu tout testé et je tourne en rond, avec mDoc.collaborateur

Extrait de mes codes,

En ajout:

Code: Tout sélectionner
Dim db As Database, rsEntet As Recordset
Dim mProcessDoc As IPMDocument
Dim mDoc As IBODocumentAchat3
Dim sNCol$, sPCol$

sNCol = "DUPONT"
sPCol = "Xavier"

    Set db = CurrentDb()
    Set rsEntet = db.OpenRecordset("tmpBcEntet", dbOpenDynaset)
    Set mProcessDoc = BaseCial.CreateProcess_Document(DocumentTypeAchatCommandeConf)
    Set mDoc = mProcessDoc.Document
   
    '   Copie Entet BC dans SAGE
    mDoc.SetDefaultFournisseur BaseCial.CptaApplication.FactoryFournisseur.ReadNumero(rsEntet("NTiers"))
    mDoc.DO_Ref = rsEntet("RefCommande")
    mDoc.DO_Coord(1) = rsEntet("NCmd")
    mDoc.DO_Date = rsEntet("DatCmd")
    mDoc.DO_DateLivr = rsEntet("DatLivre")
   'mDoc.Collaborateur.SetDefault BaseCial.CptaApplication.FactoryCollaborateur.ReadNomPrenom(sNCol, sPCol)
    'mDoc.Collaborateur ???
       
    If mProcessDoc.CanProcess Then
        mProcessDoc.Process
        AddBCFourn = True
    End If
End If



En mise à jour:
Code: Tout sélectionner

Dim db As Database, rsEntet As Recordset
Dim mDoc As IBODocumentAchat3
Dim sNPiece$
Dim sNCol$, sPCol$

sNCol = "DUPONT"
sPCol = "Xavier"

    Set db = CurrentDb()
    Set rsEntet = db.OpenRecordset("tmpBcEntet", dbOpenDynaset)
    sNPiece = rsEntet("NPIece")
   
    If BaseCial.FactoryDocumentAchat.ExistPiece(DocumentTypeAchatCommandeConf, sNPiece) Then
        '   MAJ de l'entet
        Set mDoc = BaseCial.FactoryDocumentAchat.ReadPiece(DocumentTypeAchatCommandeConf, sNPiece)
        mDoc.DO_Ref = rsEntet("RefCommande")
        mDoc.DO_Coord(1) = rsEntet("NCmd")
        mDoc.DO_DateLivr = rsEntet("DatLivre")
        'mDoc.Collaborateur.Nom = sNCol
        'mDoc.Collaborateur.PreNom = sPCol
        'mDoc.Collaborateur ???
        mDoc.Write


A savoir que dans le rsEntet, le No_Co du collaborateur est disponible, le sNCol et sPCol ne sont là qu'a titre de test et debug.

Merci par avance a celui qui peux me mettre sur la bonne voie. Cdt, Renaud.

VBA Access / SAGE Gescom et OM 100c V3, SQL
Posteur néophyte
Posteur néophyte
 
Messages: 4
Inscription: Jeu 20 Déc 2018 12:28

Re: OM, Renseigner code acheteur sur document d'achat

de pafnow » Mer 10 Juin 2020 08:50

Bonjour

Extrait de code en C# pour une mise a jour

Code: Tout sélectionner
var recDocument = dbCial.FactoryDocumentVente.ReadPiece(DocumentType.DocumentTypeVenteDevis, "DE00001");
var lstEcheances = recDocument.FactoryDocumentEcheance.List.Cast<IBODocumentEcheance3>().ToList();

var recCollaborateur = dbCpta.FactoryCollaborateur.ReadNomPrenom("ECLAT", "Dorine");
recDocument.Collaborateur = recCollaborateur;
recDocument.Write();


Il faut donc creer un objet de type IBOCollaborateur puis l'assigner a la propriete Collaborateur du document.
Il n'existe pas de fonction SetDefault pour cela.
Posteur néophyte
Posteur néophyte
 
Messages: 12
Inscription: Ven 15 Jan 2010 19:34


Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
cron