Pour implémenter un processus d’annulation (void) d’un document, procédez comme suit :
Dans un premier temps, le processus est identique à celui de la comptabilisation d’une pièce justificative normale ; vous trouverez la documentation relative à ce processus dans la section « Processus de base de transfert de documents ».
Pour marquer un document comme « nul » (ou « annulé ») – paramètre obligatoire dans plusieurs pays – vous devez définir les propriétés suivantes.
Ces propriétés sont définies au sein de l’objet « document » (RetailForce.Fiscalisation.Model.Document.Document)
- Définissez la propriété cancellationDocument = true
- Ajoutez une référence de document via la propriété documentReference
- Inversez les montants du document (rendez toutes les valeurs négatives) par rapport au document à annuler. Autrement dit, si le document à annuler affiche un chiffre d’affaires de 20 EUR, le document d’annulation doit présenter un chiffre d’affaires de -20 EUR.
Exemple de code C# :
public Document CancelDocument(TrustedFiscalModule fiscalModule, Document documentToCancel, string storeNumber, string terminalNumber)
{
// check parameter
if (fiscalModule == null) throw new ArgumentNullException(nameof(fiscalModule));
if (documentToCancel == null) throw new ArgumentNullException(nameof(documentToCancel));
// revert all values of the document (can also be done by pos software)
Document cancelDocument = fiscalModule.RevertDocument(documentToCancel);
// set CancellationDocument property to true
cancelDocument.CancellationDocument = true;
// now set document cancellation reference
cancelDocument.DocumentReference = new DocumentReference()
{
DocumentType = DocumentType.Receipt,
DocumentBookDate = documentToCancel.BookDate,
DocumentId = documentToCancel.DocumentId,
DocumentGuid = documentToCancel.DocumentGuid, // not necessary
ReferenceType = ReferenceType.Cancellation,
DocumentNumber = documentToCancel.DocumentNumber,
FiscalDocumentNumber = documentToCancel.FiscalDocumentNumber,
StoreNumber = storeNumber,
TerminalNumber = terminalNumber
};
cancelDocument.BookDate = DateTime.Now;
cancelDocument.DocumentGuid = Guid.NewGuid();
cancelDocument.DocumentId = "NEWID";
cancelDocument.DocumentNumber = "NEWNUMBER";
return cancelDocument;
}
Pour plus d’informations sur le modèle d’objet de document, veuillez vous reporter à la documentation relative au modèle d’objet de document.
Cet article a été traduit automatiquement.
Commentaires
0 commentaire
Vous devez vous connecter pour laisser un commentaire.