Pentru a implementa un proces de anulare (void) a unui document, trebuie să urmați pașii de mai jos:
La început, procesul este identic cu înregistrarea unei chitanțe normale; puteți găsi documentația pentru acest proces la secțiunea Procesul de bază de transfer al documentelor.
Pentru a marca un document ca fiind nul (sau anulat) (setare obligatorie în mai multe țări), trebuie să setați următoarele proprietăți.
Puteți găsi aceste proprietăți la obiectul document (RetailForce.Fiscalisation.Model.Document.Document)
- Setați proprietatea cancellationDocument = true
- Adăugați o referință de document cu proprietatea documentReference
- Inversați valorile documentului (transformați toate valorile în negative) în raport cu documentul anulat (documentul pe care doriți să îl anulați). Aceasta înseamnă că, dacă documentul care urmează să fie anulat are o cifră de afaceri de 20 EUR, documentul de anulare are o cifră de afaceri de -20 EUR.
Exemplu de cod 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;
}
Pentru informații detaliate despre modulul obiectului document, consultați documentația modelului obiectului document.
Acest articol a fost tradus automat.
Comentarii
0 comentarii
Vă rugăm să vă autentificați pentru a lăsa un comentariu.