- Monrake
- Nombre de messages : 10
Date d'inscription : 21/04/2009
Création de lot de chèque
Jeu 2 Mai 2013 - 14:23
Bonjour,
J'essaye de créer des lots de chèque dans Acomba en VB6.
Voici le code que j'ai actuellement :
Mon problème vient du faire que le code vient du AcoX0127.dll et j'ai du mal à l'ajuster pour le AcoSDK.
Voici les parties qui me pausent problème et que je trouve pas comment convertir :
Votre aide serait fortement apprécié!
J'essaye de créer des lots de chèque dans Acomba en VB6.
Voici le code que j'ai actuellement :
- Code:
Dim FreeIt As Long
Const noIndex = 1
' Vérifie que le lot existe
BatchIndex.BaNumber = 2
BatchIndex.PKey_BaNumber = 2
Error = BatchIndex.FindKey(noIndex, True)
If Error = 0 Then
' Si le lot existe, assigne les valeurs aux propriétés de la clé primaire
' La propriété PK_Reference est générée automatiquement par le système
BatchCardPos = BatchIndex.CardPos
TransBatchData.PKey_BJBatchCP = BatchIndex.CardPos
TransBatchData.PKey_BJType = JT_Check
' Réservation de la clé primaire pour TransBatchData
Error = TransBatchData.ReserveCard(BatchCardPos)
Else
' Si le lot n'existe pas, crée le lot BatchData
BatchData.PK_Number = 2
BatchData.PKey_BaNumber = 53
Error = BatchData.ReserveCardNumber()
If Error = 0 Then
BatchData.BaNumber = 2
BatchData.BaDescription = "Transfert Organi"
BatchData.BaFrequency = BF_None
BatchCardPos = IsBeingCreated
FreeIt = 1
' Ajoute le lot, la position (CardPos) du lot dans le fichier de données sera assigné
' automatiquement à la variable BatchCardPos après le ModifyCard
'Error = BatchData.ModifyCard(True)
Error = BatchData.AddCard
If Error = 0 Then
' Assigne les valeurs de clé primaire pour TransBatchData
TransBatchData.PKey_BJBatchCP = BatchCardPos
TransBatchData.PKey_BJType = JT_Entry
' Réservation de la clé primaire pour TransBatchData
Error = TransBatchData.ReserveCardNumber()
Else
MsgBox ("Erreur: " & Error & Acomba.GetErrorMessage(Error))
Error = BatchData.FreeCard
End If
Else
MsgBox ("Erreur: " & Error & Acomba.GetErrorMessage(Error))
End If
End If
If Error = 0 Then
' Assigne les propriétés de la fiche qui doivent être égales aux propriétés composant la clé primaire
TransBatchData.BJBatchCP = TransBatchData.PKey_BJBatchCP
TransBatchData.BJReference = TransBatchData.PKey_BJReference
TransBatchData.BJType = TransBatchData.PKey_BJType
TransBatchData.BJBankNumber = 1052
TransBatchData.TBCheckUsed = True
TransBatchData.CGType = CGL_BatchPrintAtTransfer
TransBatchData.CGBankNumber = 1052
TransBatchData.CGCareOf = "Mario Brousseau"
TransBatchData.CGCity = "Quebec"
TransBatchData.CGComments = "Commentaire"
TransBatchData.CGName = "Mario Brousseau"
TransBatchData.CGAddress = "Adresse sur le cheque test"
TransBatchData.CGAmount = 12.28
TransBatchData.CGDate = Date
Dim CopieDate As Date
TransBatchData.BJDate = Date
TransBatchData.BJBatchNumber = 2
TransBatchData.BJDescription = "Exemple de transaction par lot"
' Nombre d'affectations de l'écriture
TransBatchData.TBNumPosts = 2
' Première affectation
TransBatchData.PBAmount(1) = 12.28
' Recherche le compte 1684 pour obtenir son CardPos
CharterIndex.ChNumber = 1684
Error = CharterIndex.FindKey(2, True) ''''''''''''''''''ERREUR
If Error = 0 Then
TransBatchData.PBCharterCP(1) = CharterIndex.Key_ChCardPos
' Consultation de la fiche pour obtenir la catégorie du compte
Error = TransBatchData.GetCard(CharterIndex.Key_ChCardPos)
If Error = 0 Then
TransBatchData.PBCategory(1) = CharterData.ChCategory
' Deuxième affectation
TransBatchData.PBAmount(2) = -12.28
' Recherche le compte 2121 pour obtenir son CardPos
CharterIndex.ChNumber = 2121
Error = CharterIndex.FindKey(1, True) ''''''''''''''''''ERREUR
If Error = 0 Then
TransBatchData.PBCharterCP(2) = CharterIndex.CardPos
' Consultation de la fiche pour obtenir la catégorie du compte
Error = TransBatchData.GetCard(CharterIndex.CardPos) ''''''''''''''''''ERREUR
If Error = 0 Then
TransBatchData.PBCategory(2) = CharterData.ChCategory
' Ajoute la transaction par lot avec ModifyCard
CardPos = IsBeingCreated
Error = TransBatchData.ModifyCard(True) ''''''''''''''''''ERREUR
If Error = 0 Then
MsgBox ("Ajout de la transaction par lot effectuée avec succès")
Else
MsgBox ("Erreur: " & Acomba.GetErrorMessage(Error))
' Libère la clé primaire si l'ajout n'est pas complété
'Error = Acomba.FreeCardNumber(TransBatchData)
End If
Else
MsgBox ("Erreur: " & Acomba.GetErrorMessage(Error))
' Libère la clé primaire si l'ajout n'est pas complété
'Error = Acomba.FreeCardNumber(TransBatchData)
End If
Else
MsgBox ("Erreur: " & Acomba.GetErrorMessage(Error))
' Libère la clé primaire si l'ajout n'est pas complété
'Error = Acomba.FreeCardNumber(TransBatchData)
End If
Else
MsgBox ("Erreur: " & Acomba.GetErrorMessage(Error))
' Libère la clé primaire si l'ajout n'est pas complété
'Error = Acomba.FreeCardNumber(TransBatchData)
End If
Else
MsgBox ("Erreur: " & Acomba.GetErrorMessage(Error))
' Libère la clé primaire si l'ajout n'est pas complété
'Error = Acomba.FreeCardNumber(TransBatchData)
End If
Else
MsgBox ("Erreur: " & Acomba.GetErrorMessage(Error))
End If
Mon problème vient du faire que le code vient du AcoX0127.dll et j'ai du mal à l'ajuster pour le AcoSDK.
Voici les parties qui me pausent problème et que je trouve pas comment convertir :
- Code:
' Recherche le compte 1684 pour obtenir son CardPos
CharterIndex.ChNumber = 1684
Error = CharterIndex.FindKey(2, True)
' Consultation de la fiche pour obtenir la catégorie du compte
Error = TransBatchData.GetCard(CharterIndex.CardPos) ''''''''''''''''''ERREUR
' Ajoute la transaction par lot avec ModifyCard
CardPos = IsBeingCreated
Error = TransBatchData.ModifyCard(True) ''''''''''''''''''ERREUR
Votre aide serait fortement apprécié!
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum