Le BookingEngine est une classe implémentant IDisposable et qui présente ces méthodes (liste non exhaustive) :
- InitNew : méthode statique permettant l'initialisation d'un nouveau BookingEngine correspondant à une nouvelle écriture comptable
- InitExisting : méthode statique permettant l'initialisation d'un nouveau BookingEngine correspondant à une écriture comptable existante
- ApplyCustomerSupplier : dans une écriture comptable de vente ou d'achat, appliquer la sélection du client/fournisseur
- AppendLine : ajouter une ligne vide dans la grille des imputations générales
- AppendLineAna : ajouter une ligne vide dans la grille des imputations analytiques
- InsertAccount : insérer un compte général
- InsertAnaFull : insérer un compte analytique en mode "interface analytique complète"
- InsertAnaSimpl : insérer un compte analytique en mode "interface analytique simplifiée"
- PeriodFromDate : calculer la période comptable à partir d'une date
- UpdateAmounts : recalcul de l'écriture comptable (totaux, ...)
- Save : enregistrer l'écriture comptable
- Close : fermer le BookingEngine.
Le BookingEngine a ces propriétés publiques (liste non exhaustive) :
-
BookingForm : permet de connaître la BookingForm liée à ce BookingEngine. Est null en cas de fonctionnement en dehors de toute interface. (Par ex. : centralisation comptable)
-
ReadOnly
-
MultiUserLocked : verrouillé à cause d'un conflit multi-utilisateurs
-
ExternalDb : passe de données externes (cfr. multi-pont)
-
IsAnaSimpl : l'interface analytique est-elle actuellement complète ou simplifiée ?
-
Type : 1 = vente, 2 = achat, 3 = financier, 4 = O.D.
-
CLI : DataRow correspondant au client en cours si l'écriture est une vente
-
FOU: DataRow correspondant au fournisseur en cours si l'écriture est un achat
-
PIEDS_C : DataRow correspond au record de PIEDS_C
-
LIGNES_C : DataTable correspondant aux records de LIGNES_C
-
LIGNES_C_ANA : DataTable correspondant aux records de LIGNES_C_ANA
-
LIGNES_ISTAT : DataTable correspondant aux records de LIGNES_ISTAT
-
SEQUENC : DataRow correspondant à la séquence en cours
-
TVACODES : DataTable
-
DataSet : tous les tables dont celles citées ci-dessus
-
AccountIdDefault : compte général par défaut
-
AccountLibDefault : libellé de ce compte
-
VatIdDefault : code TVA par défaut
-
IsNew : l'écriture est-elle nouvelle ?
Le BookingEngine répond à ces évènements :
- Initialized : lorsque le BookingEngine est totalement initialisé. La propriété Cancel de l'eventArgs permet d'annuler la création de ce BookingEngine en la mettant à true. Ainsi, la BookingForm éventuellement associée à cet engine ne sera pas instanciée
- BookingFormLoaded : à la fin du chargement de la BookingForm si ce BookingEngine est associé à une BookingForm
- BeforeApplyCustomerSupplier : au début de l'exécution de la méthode ApplyCustomerSupplier
- AfterApplyCustomerSupplier : en fin de l'exécution de la méthode ApplyCustomerSupplier
- BeforeClose : au début de l'exécution de la méthode Close
- AfterClose : en fin de l'exécution de la méthode Close
- BeforeInsertAccount : au début de l'exécution de la méthode InsertAccount
- AfterInsertAccount : en fin de l'exécution de la méthode InsertAccount
- BeforeInsertAnaFull : au début de l'exécution de la méthode InsertAnaFull
- AfterInsertAnaFull : en fin de l'exécution de la méthode InsertAnaFull
- BeforeInsertAnaSimpl : au début de l'exécution de la méthode InsertAnaSimpl
- AfterInsertAnaSimpl : en fin de l'exécution de la méthode InsertAnaSimpl
- BeforeUpdateAmounts : au début de l'exécution de la méthode UpdateAmounts
- AfterUpdateAmounts : en fin de l'exécution de la méthode UpdateAmounts
- RegimeChangedByCustomerSupplier : lors du changement de régime
- CurrencyChangedByCustomerSupplier : lors du changement de devise à l'occasion du changement de client/fournisseur
- CurrencyChanged : lors du changement de devise
- BeforeSave : au début de l'exécution de la méthode Save
- DuringSave : dans la transaction de sauvegarde
- AfterSave : en fin de l'exécution de la méthode Save