Forum d'entraide Acomba
Pourquoi ne pas devenir membre du forum ?

Identifiez-vous ou Inscrivez-vous afin d'accéder à l'inrégralité du forum:
Accès à toutes les catégories du forum,
Entraide entre les 6 500 membres, et ce nombre s'accroît quotidiennement!

Notez que ce forum est indépendant de la société Acceo Solutions, éditrice du logiciel Acomba.

Rejoignez le forum, c’est rapide et facile

Forum d'entraide Acomba
Pourquoi ne pas devenir membre du forum ?

Identifiez-vous ou Inscrivez-vous afin d'accéder à l'inrégralité du forum:
Accès à toutes les catégories du forum,
Entraide entre les 6 500 membres, et ce nombre s'accroît quotidiennement!

Notez que ce forum est indépendant de la société Acceo Solutions, éditrice du logiciel Acomba.
Forum d'entraide Acomba
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Connexion
-20%
Le deal à ne pas rater :
-20% Récupérateur à eau mural 300 litres (Anthracite)
79 € 99 €
Voir le deal

Aller en bas
avatar
Monrake
Nombre de messages : 10
Date d'inscription : 21/04/2009

Liste des factures et détails en VB6 Empty Liste des factures et détails en VB6

Mer 14 Oct 2009 - 14:39
Bonjour,

J'essaye de récupérer les dernieres factures faites dans Acomba et d'avoir le détail. J'arrive à récupérer les facture sans problèmes mais le détail. Voici mon code actuel :
Code:

Public AcoSDKInt As New AcoSDK.AcoSDKX
Public Acomba As New AcoSDK.AcombaX
Public UserInt As New AcoSDK.User
Public InvoicingInt As New AcoSDK.Invoicing
'Déclaration des variables
    Dim Version As Long
    Dim CompanyPath As String
    Dim AcombaPath As String
    Dim MotDePasse As String
    Dim Exist, Error As Long
    Dim Index As Long
    Dim GetFiches As Boolean, DerniereFactureA As Double, DerniereFacture As Double
    Dim NbCles As Long
    Dim i As Long
    Dim rs As New ADODB.Recordset
   
    'Obtenir la version la plus récente du SDK
    Version = AcoSDKInt.VaVersionSDK
     
    'Démarrer le SDK avec la version obtenue
    Error = AcoSDKInt.Start(Version)
             
    'Si le SDK est bien démarré
    If Error = 0 Then
        'Chemin d'accès de la société à ouvrir
        CompanyPath = "C:\F1000.dta\DemoSDK_FR"
        'Chemin d'accès des cartes d'enregistrement d'Acomba
        AcombaPath = "C:\Aco_SDK"
        'Mot de passe de l'usager
        MotDePasse = "Demo"
        'Vérification de l'existence de la société à ouvrir
        Exist = Acomba.CompanyExists(CompanyPath)
        If Exist <> 0 Then
            'Ouverture de la société Demo
            Error = Acomba.OpenCompany(AcombaPath, CompanyPath)
            If Error = 0 Then
                'Recherche de l'usager "supervisor" pour trouver
                'son CardPos
                UserInt.PKey_UsNumber = "supervisor"
                Error = UserInt.FindKey(1, False)
                If Error = 0 Then
                    'Connexion de l'usager "supervisor" avec son mot de passe
                    Error = Acomba.LogCurrentUser(UserInt.Key_UsCardPos, MotDePasse)
                    If Error = 0 Then
                        MsgBox "Connexion de l'usager complétée avec succès."
                    Else
                        MsgBox "Erreur: " & Acomba.GetErrorMessage(Error)
                    End If
                Else
                    MsgBox "Erreur: " & Acomba.GetErrorMessage(Error)
                End If
            Else
                MsgBox "Erreur: " & Acomba.GetErrorMessage(Error)
            End If
        Else
            MsgBox "Dossier de la société invalide"
        End If
    Else
        MsgBox "Erreur: " & Acomba.GetErrorMessage(Error)
    End If
    'Index dans lequel on recherche les clés de facturation
    Index = 1
   
    'Indique à PrevKeys de consulter les fiches de facturation
    'associées aux clés d'index obtenues
    GetFiches = True
   
    'Indique à PrevKeys le nombre de clés à rechercher
    NbCles = 1
   
    'Met à vide la clé d'index en première position
    'dans le tampon
    InvoicingInt.BlankKeys
   
    'Initialisation du type de facturation
    InvoicingInt.Key_InInvoiceType = ITp_Order
   
    'Recherche les NbCles clés de facturation précédentes
    Error = InvoicingInt.PrevKeys(Index, NbCles, True, GetFiches)
    'Si des clés ont été trouvées
    If (Error = 0) And (InvoicingInt.CursorUsed > 0) Then
        InvoicingInt.Cursor = 1
        DerniereFactureA = InvoicingInt.InInvoiceNumber
        rs.Open "Select * From tblconfig Where ID = 1", Cnn, adOpenStatic, adLockOptimistic
        DerniereFacture = rs!DernierFacture
        rs.Close
        NbCles = DerniereFactureA - DerniereFacture
        'Met à vide la clé d'index en première position
        'dans le tampon
        InvoicingInt.BlankKeys
       
        'Initialisation du type de facturation
        InvoicingInt.Key_InInvoiceType = ITp_Order
        'Recherche les NbCles clés de facturation précédentes
        Error = InvoicingInt.PrevKeys(Index, NbCles, True, GetFiches)
        If (Error = 0) And (InvoicingInt.CursorUsed > 0) Then
            'Pour chacune des clés obtenues dans le tampon
            For i = InvoicingInt.CursorUsed To 1 Step -1
                'Placer le curseur à l'élément i du tampon
                InvoicingInt.Cursor = i
                MsgBox InvoicingInt.InCustomerSupplierNumber
                MsgBox InvoicingInt.InReference
               
                'Ajouter le numéro et le total de la facture à la liste
                Lst_Invoice.AddItem (InvoicingInt.InInvoiceNumber & " " & InvoicingInt.InInvoiceTotal)
            Next i
        ElseIf Error <> 0 Then
            MsgBox "Erreur: " & Acomba.GetErrorMessage(Error)
        End If
    ElseIf Error <> 0 Then
        MsgBox "Erreur: " & Acomba.GetErrorMessage(Error)
    End If

Rendu là, je ne vois pas comment aller chercher mon InvoicingLine et le SDK en parle mais ne donne pas d'exemple concré pour en faire la lecture. Avez vous une piste à me suggérer ?
avatar
hench
Nombre de messages : 163
Date d'inscription : 30/12/2008

Fiche d'Entreprise
Nom de l'entreprise:

Liste des factures et détails en VB6 Empty Re: Liste des factures et détails en VB6

Lun 6 Sep 2010 - 3:19
Salut

Utilisez plutôt l'interface virtuel Transaction pour accéder aux détails d'une facture

Les lignes de facturations sont plus accessibles de cette facon

ci@o!
hench
Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum