Za implementaciju procesa otkazivanja dokumenta (void) potrebno je učiniti sljedeće:
U početku je postupak isti kao i za rezervaciju normalnog računa, a dokumentaciju za ovaj postupak možete pronaći pod Osnovni postupak prijenosa dokumenta.
Da biste označili dokument kao poništeni (ili otkazani) dokument (obavezna postavka u nekim zemljama), morate postaviti sljedeća svojstva.
Ove svojstva možete pronaći na objektu dokumenta (RetailForce.Fiscalisation.Model.Document.Document)
- Postavite svojstvo CancellationDocument = true
- Dodajte referencu na dokument svojstvom DocumentReference
- Povratite dokument (pretvorite sve vrijednosti u negativne) u odnosu na otkazani dokument (dokument koji želite otkazati). To znači da ako dokument koji treba otkazati ima promet od 20 EUR, otkazani dokument ima promet od -20 EUR.
Primjer C# koda:
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;
}
Za detaljne informacije o modulu objekta dokumenta pogledajte dokumentaciju modela objekta dokumenta.
Ovaj je članak automatski preveden.
Komentari
0 komentara
Molimo Prijavite se kako bi ostavili komentar.