mirror of
https://github.com/IRPTeam/IRP.git
synced 2025-09-16 08:56:27 +02:00
#IRP-568 Add shift number support to fiscal printer modules (#2863)
* #IRP-568 Add shift number support to fiscal printer modules Introduces handling of shift numbers in fiscal printer client, server, and API modules. Adds ShiftNumber fields to relevant structures, document objects, and information registers. Updates logic to store and retrieve shift numbers alongside check numbers for improved traceability and compliance. * Add FiscalResponse to CorrectionData and refactor VAT handling * Add PaymentInFiscalPrinterMode attribute and logic Introduces the PaymentInFiscalPrinterMode boolean attribute to hardware catalog, retail sales receipt document, and payment forms. Updates UI forms to display and edit this attribute, and modifies payment processing logic to account for payments made in fiscal printer mode, including visibility and validation changes. Also refines cashier name retrieval in the fiscal printer server module. * Update _8510FiscalPrinter.feature * Add PaymentInFiscalPrinterMode attribute and update payment logic * Add 'DocumentPostingAfterPrinting' option for receipts Introduces the 'DocumentPostingAfterPrinting' boolean attribute to hardware and point of sale forms, allowing receipts to be posted after printing based on this setting. Updates business logic to handle postponed posting, including new procedures for posting and canceling transactions, and adjusts status handling throughout the payment and return process. Also refines data handling in HardwareServer and validation in EquipmentFiscalPrinterClient to support the new attribute. * Fix nested attribute extraction in GetAttributesFromRef Updated GetAttributesFromRef to correctly handle nested attribute names using dot notation. Extended unit tests to cover extraction of nested attributes from empty references, ensuring proper structure and default values are returned. * Fix handling of undefined ConsolidatedRetailSales document * Show user message if fiscal printer is not set Added a call to display a user message when attempting to reconnect the fiscal printer and it is not configured. This improves user feedback in cases where the fiscal printer is missing. --------- Co-authored-by: Natalia Trukhachova <66120736+Severnity@users.noreply.github.com>
This commit is contained in:
@@ -780,6 +780,76 @@
|
||||
<textEdit>true</textEdit>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>PaymentInFiscalPrinterMode</name>
|
||||
<id>173</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>Object.PaymentInFiscalPrinterMode</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>PaymentInFiscalPrinterModeExtendedTooltip</name>
|
||||
<id>175</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>PaymentInFiscalPrinterModeContextMenu</name>
|
||||
<id>174</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>CheckBoxField</type>
|
||||
<editMode>Enter</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:CheckBoxFieldExtInfo">
|
||||
<checkBoxType>Switcher</checkBoxType>
|
||||
</extInfo>
|
||||
</items>
|
||||
<items xsi:type="form:FormField">
|
||||
<name>DocumentPostingAfterPrinting</name>
|
||||
<id>176</id>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
<common>true</common>
|
||||
</userVisible>
|
||||
<dataPath xsi:type="form:DataPath">
|
||||
<segments>Object.DocumentPostingAfterPrinting</segments>
|
||||
</dataPath>
|
||||
<extendedTooltip>
|
||||
<name>DocumentPostingAfterPrintingExtendedTooltip</name>
|
||||
<id>178</id>
|
||||
<type>Label</type>
|
||||
<autoMaxWidth>true</autoMaxWidth>
|
||||
<autoMaxHeight>true</autoMaxHeight>
|
||||
<extInfo xsi:type="form:LabelDecorationExtInfo">
|
||||
<horizontalAlign>Left</horizontalAlign>
|
||||
</extInfo>
|
||||
</extendedTooltip>
|
||||
<contextMenu>
|
||||
<name>DocumentPostingAfterPrintingContextMenu</name>
|
||||
<id>177</id>
|
||||
<autoFill>true</autoFill>
|
||||
</contextMenu>
|
||||
<type>CheckBoxField</type>
|
||||
<editMode>Enter</editMode>
|
||||
<showInHeader>true</showInHeader>
|
||||
<headerHorizontalAlign>Left</headerHorizontalAlign>
|
||||
<showInFooter>true</showInFooter>
|
||||
<extInfo xsi:type="form:CheckBoxFieldExtInfo">
|
||||
<checkBoxType>Switcher</checkBoxType>
|
||||
</extInfo>
|
||||
</items>
|
||||
<visible>true</visible>
|
||||
<enabled>true</enabled>
|
||||
<userVisible>
|
||||
|
@@ -214,6 +214,36 @@
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<dataHistory>Use</dataHistory>
|
||||
</attributes>
|
||||
<attributes uuid="1454114b-fa9d-4c77-9308-af89beb82d7b">
|
||||
<name>PaymentInFiscalPrinterMode</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Payment in fiscal printer mode</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>Boolean</types>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<fillValue xsi:type="core:UndefinedValue"/>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<dataHistory>Use</dataHistory>
|
||||
</attributes>
|
||||
<attributes uuid="90be32c2-b8f5-424b-9c93-6112b59f057f">
|
||||
<name>DocumentPostingAfterPrinting</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Document posting after printing</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>Boolean</types>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<fillValue xsi:type="core:UndefinedValue"/>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<dataHistory>Use</dataHistory>
|
||||
</attributes>
|
||||
<tabularSections uuid="fd9a6894-9c06-4625-91a4-5db398bbb9ac">
|
||||
<producedTypes>
|
||||
<objectType typeId="b8fed1f0-7596-48b4-9c7e-bbe156d72e69" valueTypeId="1acf60ec-ede0-41cf-8e2a-c53aee5f71c5"/>
|
||||
|
@@ -963,8 +963,14 @@ Function GetAttributesFromRef(Ref, Attributes, OnlyAllowed = False) Export
|
||||
EndIf;
|
||||
|
||||
If Ref.IsEmpty() Then
|
||||
For Each Attr In CurrentResult Do
|
||||
CurrentResult[Attr.Key] = Ref[Attr.Key];
|
||||
For Each ItemAttribute In AttributesStructure Do
|
||||
CurrentResult = Result;
|
||||
FieldName = ?(ValueIsFilled(ItemAttribute.Value), ItemAttribute.Value, ItemAttribute.Key); // String
|
||||
FieldParts = StrSplit(FieldName, ".");
|
||||
For Index = 0 To FieldParts.UBound() - 1 Do
|
||||
CurrentResult = CurrentResult[FieldParts[Index]]; // Structure
|
||||
EndDo;
|
||||
CurrentResult[FieldParts[FieldParts.UBound()]] = GetRefAttribute(Ref, FieldName);
|
||||
EndDo;
|
||||
Return Result;
|
||||
EndIf;
|
||||
|
@@ -325,6 +325,7 @@ EndFunction
|
||||
// * In - Structure:
|
||||
// ** DeviceID - String - Device ID
|
||||
// ** CheckNumber - String - Fiscal check number
|
||||
// ** ShiftNumber - String - Shift number
|
||||
// * InOut - Structure -
|
||||
// * Out - Structure:
|
||||
Function GetPrintCheckCopySettings() Export
|
||||
@@ -338,6 +339,7 @@ Function GetPrintCheckCopySettings() Export
|
||||
Str.Insert("In", New Structure);
|
||||
Str.In.Insert("DeviceID", "");
|
||||
Str.In.Insert("CheckNumber", "");
|
||||
Str.In.Insert("ShiftNumber", "");
|
||||
|
||||
Str.Insert("InOut", New Structure);
|
||||
|
||||
@@ -814,6 +816,7 @@ EndFunction
|
||||
// *** Description - String - Description of the correction
|
||||
// *** Date - Date - Date of the corrected transaction
|
||||
// *** Number - String - Number of the tax authority's prescription
|
||||
// *** FiscalResponse - String - Fiscal response
|
||||
// ** TaxationSystem - Number - Taxation system code
|
||||
// ** CustomerDetail - Structure - Customer (client) details:
|
||||
// *** Info - String - Name of the organization or surname, name, patronymic (if available)
|
||||
@@ -874,6 +877,7 @@ Function CheckPackage() Export
|
||||
CorrectionData.Insert("Description", "");
|
||||
CorrectionData.Insert("Date", Date(1, 1, 1));
|
||||
CorrectionData.Insert("Number", "");
|
||||
CorrectionData.Insert("FiscalResponse", "");
|
||||
Str.Parameters.Insert("CorrectionData", CorrectionData);
|
||||
|
||||
CustomerDetail = New Structure;
|
||||
|
@@ -246,9 +246,11 @@ Procedure ValidateProcessCheck(DataSource)
|
||||
OR TypeOf(DataSource) = Type("DocumentRef.RetailReceiptCorrection")
|
||||
Then
|
||||
|
||||
StatusData = CommonFunctionsServer.GetAttributesFromRef(DataSource, "StatusType, Posted, DeletionMark");
|
||||
StatusData = CommonFunctionsServer.GetAttributesFromRef(DataSource,
|
||||
"StatusType, Posted, DeletionMark, ConsolidatedRetailSales.FiscalPrinter.DocumentPostingAfterPrinting");
|
||||
|
||||
If Not StatusData.StatusType = PredefinedValue("Enum.RetailReceiptStatusTypes.Completed") Then
|
||||
If Not StatusData.StatusType = PredefinedValue("Enum.RetailReceiptStatusTypes.Completed")
|
||||
And StatusData.ConsolidatedRetailSales.FiscalPrinter.DocumentPostingAfterPrinting <> True Then
|
||||
Raise R().EqFP_CanPrintOnlyComplete;
|
||||
EndIf;
|
||||
|
||||
@@ -330,6 +332,7 @@ Async Function PrintCheckCopy(ConsolidatedRetailSales, DataSource) Export
|
||||
EndIf;
|
||||
|
||||
PrintCheckCopySettings.In.CheckNumber = StatusData.CheckNumber;
|
||||
PrintCheckCopySettings.In.ShiftNumber = StatusData.ShiftNumber;
|
||||
Await EquipmentFiscalPrinterAPIClient.PrintCheckCopy(CRS.FiscalPrinter, PrintCheckCopySettings);
|
||||
|
||||
Return PrintCheckCopySettings;
|
||||
|
@@ -96,6 +96,7 @@ Async Function PrintCheckCopy(ConsolidatedRetailSales, DataSource) Export
|
||||
EndIf;
|
||||
|
||||
PrintCheckCopySettings.In.CheckNumber = StatusData.CheckNumber;
|
||||
PrintCheckCopySettings.In.ShiftNumber = StatusData.ShiftNumber;
|
||||
Await EquipmentFiscalPrinterAPIClient.PrintCheckCopy(CRS.FiscalPrinter, PrintCheckCopySettings);
|
||||
|
||||
Return PrintCheckCopySettings;
|
||||
|
@@ -278,6 +278,7 @@ Function PrintCheckCopy(ConsolidatedRetailSales, DataSource) Export
|
||||
EndIf;
|
||||
|
||||
PrintCheckCopySettings.In.CheckNumber = StatusData.CheckNumber;
|
||||
PrintCheckCopySettings.In.ShiftNumber = StatusData.ShiftNumber;
|
||||
EquipmentFiscalPrinterAPIServer.PrintCheckCopy(CRS.FiscalPrinter, PrintCheckCopySettings);
|
||||
|
||||
Return PrintCheckCopySettings;
|
||||
@@ -531,9 +532,12 @@ Procedure FillCheckPackageByRetailReceipt(Val SourceData, CheckPackage) Export
|
||||
CheckPackage.Parameters.CorrectionData.Number = "0";
|
||||
EndIf;
|
||||
|
||||
If IsBlankString(CheckPackage.Parameters.CorrectionData.Description) Then
|
||||
Raise R().CorrectionDescriptionRequired;
|
||||
EndIf;
|
||||
FiscalStatus = InformationRegisters.DocumentFiscalStatus.GetStatusData(DocumentWithCorrectionInfo);
|
||||
CheckPackage.Parameters.CorrectionData.FiscalResponse = FiscalStatus.FiscalResponse;
|
||||
|
||||
If IsBlankString(CheckPackage.Parameters.CorrectionData.Description) Then
|
||||
Raise R().CorrectionDescriptionRequired;
|
||||
EndIf;
|
||||
|
||||
Else
|
||||
CheckPackage.Parameters.CorrectionData = New Structure();
|
||||
@@ -670,18 +674,7 @@ Procedure FillCheckPackageByPayment(SourceData, CheckPackage, isCash)
|
||||
FiscalStringData.PaymentMethod = 3;
|
||||
FiscalStringData.PriceWithDiscount = Item.TotalAmount;
|
||||
|
||||
If ValueIsFilled(Item.VatRate) Then
|
||||
If Item.VatRate.NoRate Then
|
||||
FiscalStringData.VATRate = "none";
|
||||
FiscalStringData.VATAmount = 0;
|
||||
Else
|
||||
FiscalStringData.VATRate = Format(Item.VatRate.Rate, "NZ=0; NG=0;");
|
||||
FiscalStringData.VATAmount = Item.TaxAmount;
|
||||
EndIf;
|
||||
Else
|
||||
FiscalStringData.VATRate = "none";
|
||||
FiscalStringData.VATAmount = 0;
|
||||
EndIf;
|
||||
FillVatRate(Item, FiscalStringData);
|
||||
|
||||
CheckPackage.Positions.FiscalStrings.Add(FiscalStringData);
|
||||
EndDo;
|
||||
@@ -786,7 +779,8 @@ EndFunction
|
||||
// Ref - DocumentRef.RetailSalesReceipt, DocumentRef.ConsolidatedRetailSales -
|
||||
// InputParameters - See EquipmentFiscalPrinterAPIClient.InputParameters
|
||||
Procedure FillInputParameters(Ref, InputParameters) Export
|
||||
InputParameters.CashierName = Ref.Author.Partner.Description_ru;
|
||||
//InputParameters.CashierName = Ref.Author.Partner.Description_ru;
|
||||
InputParameters.CashierName = LocalizationServer.RefDescription(Ref.Author.Partner);
|
||||
|
||||
If IsBlankString(InputParameters.CashierName) Then
|
||||
//@skip-check property-return-type
|
||||
@@ -1044,46 +1038,54 @@ EndProcedure
|
||||
|
||||
Procedure FillPayments(SourceData, CheckPackage)
|
||||
For Each Payment In SourceData.Payments Do
|
||||
If Payment.Amount < 0 Then
|
||||
Continue;
|
||||
EndIf;
|
||||
|
||||
If SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.FullPrepayment Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.PartialPrepayment Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.AdvancePayment Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.FullCalculation Then
|
||||
If Payment.PaymentType.Type = Enums.PaymentTypes.Cash Then
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Card Then
|
||||
CheckPackage.Payments.ElectronicPayment = CheckPackage.Payments.ElectronicPayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.PaymentAgent Then
|
||||
If Payment.Amount < 0 Then
|
||||
Continue;
|
||||
EndIf;
|
||||
|
||||
If SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.FullPrepayment Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.PartialPrepayment Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.AdvancePayment Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf SourceData.PaymentMethod = Enums.ReceiptPaymentMethods.FullCalculation Then
|
||||
If Payment.PaymentType.Type = Enums.PaymentTypes.Cash Then
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Card Then
|
||||
If Payment.PaymentInFiscalPrinterMode Then
|
||||
CheckPackage.Payments.PostPayment = CheckPackage.Payments.PostPayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Advance Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Certificate Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
Else
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
CheckPackage.Payments.ElectronicPayment = CheckPackage.Payments.ElectronicPayment + Payment.Amount;
|
||||
EndIf;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.PaymentAgent Then
|
||||
CheckPackage.Payments.PostPayment = CheckPackage.Payments.PostPayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Advance Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Certificate Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
Else
|
||||
If Payment.PaymentType.Type = Enums.PaymentTypes.Cash Then
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Card Then
|
||||
CheckPackage.Payments.ElectronicPayment = CheckPackage.Payments.ElectronicPayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.PaymentAgent Then
|
||||
CheckPackage.Payments.PostPayment = CheckPackage.Payments.PostPayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Advance Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Certificate Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
Else
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
EndIf;
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
EndIf;
|
||||
EndDo;
|
||||
Else
|
||||
If Payment.PaymentType.Type = Enums.PaymentTypes.Cash Then
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Card Then
|
||||
If Payment.PaymentInFiscalPrinterMode Then
|
||||
CheckPackage.Payments.PostPayment = CheckPackage.Payments.PostPayment + Payment.Amount;
|
||||
Else
|
||||
CheckPackage.Payments.ElectronicPayment = CheckPackage.Payments.ElectronicPayment + Payment.Amount;
|
||||
EndIf;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.PaymentAgent Then
|
||||
CheckPackage.Payments.PostPayment = CheckPackage.Payments.PostPayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Advance Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
ElsIf Payment.PaymentType.Type = Enums.PaymentTypes.Certificate Then
|
||||
CheckPackage.Payments.PrePayment = CheckPackage.Payments.PrePayment + Payment.Amount;
|
||||
Else
|
||||
CheckPackage.Payments.Cash = CheckPackage.Payments.Cash + Payment.Amount;
|
||||
EndIf;
|
||||
EndIf;
|
||||
EndDo;
|
||||
EndProcedure
|
||||
|
||||
#EndRegion
|
||||
|
@@ -253,14 +253,31 @@ Procedure FixTypesForWrite(Data) Export
|
||||
EndDo;
|
||||
EndIf;
|
||||
EndIf;
|
||||
If Data.Property("In") And Data.In.Property("CheckPackage") And Data.In.CheckPackage.Property("Positions") Then
|
||||
For Each Row In Data.In.CheckPackage.Positions.FiscalStrings Do
|
||||
For Each Prop In Row Do
|
||||
If Not CommonFunctionsServer.IsPrimitiveValue(Prop.Value) Then
|
||||
Row[Prop.Key] = String(Prop.Value);
|
||||
If Data.Property("In") And Data.In.Property("CheckPackage") Then
|
||||
If Data.In.CheckPackage.Property("Positions") Then
|
||||
For Each Row In Data.In.CheckPackage.Positions.FiscalStrings Do
|
||||
For Each Prop In Row Do
|
||||
If Not CommonFunctionsServer.IsPrimitiveValue(Prop.Value) Then
|
||||
Row[Prop.Key] = String(Prop.Value);
|
||||
EndIf;
|
||||
EndDo;
|
||||
EndDo;
|
||||
EndIf;
|
||||
If Data.In.CheckPackage.Property("Parameters") Then
|
||||
For Each ParameterKeyValue In Data.In.CheckPackage.Parameters Do
|
||||
If TypeOf(ParameterKeyValue.Value) = Type("Structure") Then
|
||||
For Each Prop In ParameterKeyValue.Value Do
|
||||
If Not CommonFunctionsServer.IsPrimitiveValue(Prop.Value) Then
|
||||
Data.In.CheckPackage.Parameters[ParameterKeyValue.Key][Prop.Key] = String(Prop.Value);
|
||||
EndIf;
|
||||
EndDo;
|
||||
Else
|
||||
If Not CommonFunctionsServer.IsPrimitiveValue(ParameterKeyValue.Value) Then
|
||||
Data.In.CheckPackage.Parameters[ParameterKeyValue.Key] = String(ParameterKeyValue.Value);
|
||||
EndIf;
|
||||
EndIf;
|
||||
EndDo;
|
||||
EndDo;
|
||||
EndIf;
|
||||
EndIf;
|
||||
EndIf;
|
||||
EndProcedure
|
||||
|
@@ -6692,6 +6692,23 @@ End</presentationExpression>
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</attributes>
|
||||
<attributes>
|
||||
<name>DocumentPostingAfterPrinting</name>
|
||||
<title>
|
||||
<key>en</key>
|
||||
<value>Document posting after printing</value>
|
||||
</title>
|
||||
<id>216</id>
|
||||
<valueType>
|
||||
<types>Boolean</types>
|
||||
</valueType>
|
||||
<view>
|
||||
<common>true</common>
|
||||
</view>
|
||||
<edit>
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</attributes>
|
||||
<formCommands>
|
||||
<name>qPayment</name>
|
||||
<title>
|
||||
|
@@ -1095,9 +1095,11 @@ Async Procedure PaymentFormClose(Result, AdditionalData) Export
|
||||
EndDo;
|
||||
|
||||
If Not ResultPrint Then
|
||||
ReceiptsCanceling(TransactionResult.Refs);
|
||||
ReceiptsCanceling(TransactionResult);
|
||||
PaymentForm.Items.Enter.Enabled = True;
|
||||
Return;
|
||||
ElsIf DocumentPostingAfterPrinting Then
|
||||
PostTransaction(TransactionResult);
|
||||
EndIf;
|
||||
|
||||
PaymentForm.Close();
|
||||
@@ -1362,6 +1364,11 @@ Function WriteTransaction(PaymentResult)
|
||||
DocRef = Undefined;
|
||||
CashbackAmount = 0;
|
||||
|
||||
ReceiptStatus = Enums.RetailReceiptStatusTypes.Completed;
|
||||
If DocumentPostingAfterPrinting Then
|
||||
ReceiptStatus = Enums.RetailReceiptStatusTypes.PostponedWithReserve;
|
||||
EndIf;
|
||||
|
||||
If ThisObject.isReturn Then
|
||||
|
||||
PaymentsTable = PaymentResult.Payments.Unload(); // ValueTable
|
||||
@@ -1372,10 +1379,10 @@ Function WriteTransaction(PaymentResult)
|
||||
EndDo;
|
||||
|
||||
If ThisObject.RetailBasis.IsEmpty() Then
|
||||
DocRef = CreateReturnWithoutBase(PaymentsTable, Enums.RetailReceiptStatusTypes.Completed);
|
||||
DocRef = CreateReturnWithoutBase(PaymentsTable, ReceiptStatus);
|
||||
Result.Refs.Add(DocRef);
|
||||
Else
|
||||
DocRefs = CreateReturnOnBase(PaymentsTable, Enums.RetailReceiptStatusTypes.Completed);
|
||||
DocRefs = CreateReturnOnBase(PaymentsTable, ReceiptStatus);
|
||||
For Each DocRef In DocRefs Do
|
||||
Result.Refs.Add(DocRef);
|
||||
EndDo;
|
||||
@@ -1396,7 +1403,7 @@ Function WriteTransaction(PaymentResult)
|
||||
ObjectValue = FormAttributeToValue("Object");
|
||||
EndIf;
|
||||
ObjectValue.Date = CommonFunctionsServer.GetCurrentSessionDate();
|
||||
ObjectValue.StatusType = Enums.RetailReceiptStatusTypes.Completed;
|
||||
ObjectValue.StatusType = ReceiptStatus;
|
||||
ObjectValue.Payments.Load(Payments);
|
||||
For Each Row In ObjectValue.Payments Do
|
||||
If ValueIsFilled(Row.PaymentType) Then
|
||||
@@ -1411,10 +1418,14 @@ Function WriteTransaction(PaymentResult)
|
||||
Except
|
||||
Return Result;
|
||||
EndTry;
|
||||
|
||||
DocRef = ObjectValue.Ref;
|
||||
DPPointOfSaleServer.AfterPostingDocument(DocRef);
|
||||
|
||||
If ReceiptStatus = Enums.RetailReceiptStatusTypes.Completed Then
|
||||
DPPointOfSaleServer.AfterPostingDocument(DocRef);
|
||||
EndIf;
|
||||
|
||||
Result.Refs.Add(DocRef);
|
||||
|
||||
EndIf;
|
||||
|
||||
CashAmountFilter = New Structure();
|
||||
@@ -1430,6 +1441,38 @@ Function WriteTransaction(PaymentResult)
|
||||
Return Result;
|
||||
EndFunction
|
||||
|
||||
// Receipts canceling.
|
||||
//
|
||||
// Parameters:
|
||||
// TransactionInfo - See WriteTransaction
|
||||
&AtServer
|
||||
Procedure ReceiptsCanceling(TransactionInfo)
|
||||
For Each Ref In TransactionInfo.Refs Do
|
||||
ThisObject.PostponedReceipt = Ref;
|
||||
RefObject = Ref.GetObject();
|
||||
If RefObject.StatusType = Enums.RetailReceiptStatusTypes.Canceled Then
|
||||
Continue;
|
||||
EndIf;
|
||||
RefObject.StatusType = Enums.RetailReceiptStatusTypes.Canceled;
|
||||
RefObject.Write(DocumentWriteMode.Posting);
|
||||
EndDo;
|
||||
EndProcedure
|
||||
|
||||
// Post transaction.
|
||||
//
|
||||
// Parameters:
|
||||
// TransactionInfo - See WriteTransaction
|
||||
&AtServer
|
||||
Procedure PostTransaction(TransactionInfo)
|
||||
For Each DocRef In TransactionInfo.Refs Do
|
||||
ThisObject.PostponedReceipt = DocRef;
|
||||
RefObject = DocRef.GetObject();
|
||||
RefObject.StatusType = Enums.RetailReceiptStatusTypes.Completed;
|
||||
RefObject.Write(DocumentWriteMode.Posting);
|
||||
DPPointOfSaleServer.AfterPostingDocument(DocRef);
|
||||
EndDo;
|
||||
EndProcedure
|
||||
|
||||
&AtClient
|
||||
Procedure SetShowItems()
|
||||
Items.PageButtons.CurrentPage = Items.ItemsPage;
|
||||
@@ -1521,10 +1564,22 @@ Procedure ClearRetailCustomerAtServer()
|
||||
EndDo;
|
||||
EndProcedure
|
||||
|
||||
// Change consolidated retail sales.
|
||||
//
|
||||
// Parameters:
|
||||
// Object - FormDataStructure - Object
|
||||
// Form - ClientApplicationForm - Form
|
||||
// NewDocument - DocumentRef.ConsolidatedRetailSales, Undefined - New document
|
||||
&AtClientAtServerNoContext
|
||||
Procedure ChangeConsolidatedRetailSales(Object, Form, NewDocument)
|
||||
Form.ConsolidatedRetailSales = NewDocument;
|
||||
Object.ConsolidatedRetailSales = NewDocument;
|
||||
If NewDocument <> Undefined Then
|
||||
Form.DocumentPostingAfterPrinting =
|
||||
CommonFunctionsServer.GetAttributesFromRef(
|
||||
NewDocument, "FiscalPrinter.DocumentPostingAfterPrinting").
|
||||
FiscalPrinter.DocumentPostingAfterPrinting;
|
||||
EndIf;
|
||||
EndProcedure
|
||||
|
||||
#EndRegion
|
||||
@@ -2029,7 +2084,10 @@ Function CreateReturnOnBase(PaymentData, StatusType)
|
||||
|
||||
DPPointOfSaleServer.BeforePostingDocument(NewDoc);
|
||||
NewDoc.Write(DocumentWriteMode.Posting);
|
||||
DPPointOfSaleServer.AfterPostingDocument(NewDoc.Ref);
|
||||
|
||||
If StatusType = Enums.RetailReceiptStatusTypes.Completed Then
|
||||
DPPointOfSaleServer.AfterPostingDocument(NewDoc.Ref);
|
||||
EndIf;
|
||||
|
||||
DocRefs.Add(NewDoc.Ref);
|
||||
EndDo;
|
||||
@@ -2073,9 +2131,12 @@ Function CreateReturnWithoutBase(PaymentData, StatusType)
|
||||
NewDoc.Fill(FillingData);
|
||||
SourceOfOriginClientServer.UpdateSourceOfOriginsQuantity(NewDoc);
|
||||
|
||||
DPPointOfSaleServer.BeforePostingDocument(NewDoc);
|
||||
DPPointOfSaleServer.BeforePostingDocument(NewDoc);
|
||||
NewDoc.Write(DocumentWriteMode.Posting);
|
||||
DPPointOfSaleServer.AfterPostingDocument(NewDoc.Ref);
|
||||
|
||||
If StatusType = Enums.RetailReceiptStatusTypes.Completed Then
|
||||
DPPointOfSaleServer.AfterPostingDocument(NewDoc.Ref);
|
||||
EndIf;
|
||||
|
||||
Return NewDoc.Ref;
|
||||
|
||||
@@ -2442,23 +2503,6 @@ Procedure OpenPostponedReceiptAtServer(Receipt)
|
||||
|
||||
EndProcedure
|
||||
|
||||
// Receipts canceling.
|
||||
//
|
||||
// Parameters:
|
||||
// Refs - Array of DocumentRef.RetailSalesReceipt - Refs
|
||||
&AtServer
|
||||
Procedure ReceiptsCanceling(Refs)
|
||||
For Each Ref In Refs Do
|
||||
ThisObject.PostponedReceipt = Ref;
|
||||
RefObject = Ref.GetObject();
|
||||
If RefObject.StatusType = Enums.RetailReceiptStatusTypes.Canceled Then
|
||||
Continue;
|
||||
EndIf;
|
||||
RefObject.StatusType = Enums.RetailReceiptStatusTypes.Canceled;
|
||||
RefObject.Write(DocumentWriteMode.Posting);
|
||||
EndDo;
|
||||
EndProcedure
|
||||
|
||||
&AtServerNoContext
|
||||
Function CancelingPostponedReceipts(ConsolidatedRetailSales)
|
||||
Result = 0;
|
||||
|
@@ -2990,6 +2990,23 @@
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</columns>
|
||||
<columns>
|
||||
<name>PaymentInFiscalPrinterMode</name>
|
||||
<title>
|
||||
<key>en</key>
|
||||
<value>Payment in fiscal printer mode</value>
|
||||
</title>
|
||||
<id>67</id>
|
||||
<valueType>
|
||||
<types>Boolean</types>
|
||||
</valueType>
|
||||
<view>
|
||||
<common>true</common>
|
||||
</view>
|
||||
<edit>
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</columns>
|
||||
</attributes>
|
||||
<attributes>
|
||||
<name>PaymentsAmountTotal</name>
|
||||
@@ -3762,6 +3779,23 @@ WHERE
|
||||
</edit>
|
||||
</columns>
|
||||
</attributes>
|
||||
<attributes>
|
||||
<name>FiscalPrinter</name>
|
||||
<title>
|
||||
<key>en</key>
|
||||
<value>Fiscal printer</value>
|
||||
</title>
|
||||
<id>66</id>
|
||||
<valueType>
|
||||
<types>CatalogRef.Hardware</types>
|
||||
</valueType>
|
||||
<view>
|
||||
<common>true</common>
|
||||
</view>
|
||||
<edit>
|
||||
<common>true</common>
|
||||
</edit>
|
||||
</attributes>
|
||||
<formCommands>
|
||||
<name>Card</name>
|
||||
<title>
|
||||
|
@@ -36,6 +36,10 @@ Procedure OnCreateAtServer(Cancel, StandardProcessing)
|
||||
And ConsolidatedRetailSales = RetailBasis.ConsolidatedRetailSales Then
|
||||
ReturnInTheSameConsolidateSales = True;
|
||||
EndIf;
|
||||
|
||||
If Not ConsolidatedRetailSales.IsEmpty() Then
|
||||
FiscalPrinter = CommonFunctionsServer.GetRefAttribute(ThisObject.ConsolidatedRetailSales, "FiscalPrinter");
|
||||
EndIf;
|
||||
|
||||
Items.PaymentsRRNCode.Visible = isReturn;
|
||||
|
||||
@@ -238,7 +242,12 @@ Procedure PaymentsOnActivateRow(Item)
|
||||
|
||||
CurrentData.Edited = False;
|
||||
CurrentData.AmountString = GetAmountString(CurrentData.Amount);
|
||||
|
||||
Items.GroupPaymentByAcquiring.Visible = Not CurrentData.Hardware.isEmpty();
|
||||
If Not FiscalPrinter.IsEmpty() And CurrentData.Hardware = FiscalPrinter
|
||||
And CurrentData.PaymentInFiscalPrinterMode Then
|
||||
Items.GroupPaymentByAcquiring.Visible = False;
|
||||
EndIf;
|
||||
|
||||
Items.Payment_PayByPaymentCard.Enabled = Not CurrentData.PaymentDone;
|
||||
|
||||
@@ -255,7 +264,7 @@ Procedure PaymentsOnActivateRow(Item)
|
||||
EndIf;
|
||||
|
||||
Items.Payment_RevertLastPayment.Enabled = Not IsBlankString(CurrentData.RRNCodeCurrentOperation);
|
||||
|
||||
|
||||
EndProcedure
|
||||
|
||||
#EndRegion
|
||||
@@ -272,6 +281,7 @@ Async Procedure Enter(Command)
|
||||
For Each PaymentRow In Payments Do
|
||||
If Not PaymentRow.Hardware.IsEmpty()
|
||||
And PaymentRow.Amount > 0
|
||||
And Not PaymentRow.PaymentInFiscalPrinterMode
|
||||
And Not PaymentRow.PaymentDone Then
|
||||
CommonFunctionsClientServer.ShowUsersMessage(R().EqAc_NotAllPaymentDone);
|
||||
Return;
|
||||
@@ -359,9 +369,13 @@ EndProcedure
|
||||
|
||||
&AtClient
|
||||
Async Procedure ReconnectFiscalPrinter(Command)
|
||||
Hardware = CommonFunctionsServer.GetRefAttribute(ThisObject.ConsolidatedRetailSales, "FiscalPrinter");
|
||||
HardwareClient.DisconnectHardware(Hardware);
|
||||
ConnectResult = Await HardwareClient.ConnectHardware(Hardware);
|
||||
If FiscalPrinter.IsEmpty() Then
|
||||
CommonFunctionsClientServer.ShowUsersMessage(R().Eq_013);
|
||||
Return;
|
||||
EndIf;
|
||||
|
||||
HardwareClient.DisconnectHardware(FiscalPrinter);
|
||||
ConnectResult = Await HardwareClient.ConnectHardware(FiscalPrinter);
|
||||
If Not ConnectResult.Result Then
|
||||
CommonFunctionsClientServer.ShowUsersMessage(ConnectResult.ErrorDescription);
|
||||
Else
|
||||
@@ -732,6 +746,10 @@ Procedure FillPayments(Result, AdditionalParameters) Export
|
||||
Settings = EquipmentAcquiringServer.GetAcquiringHardwareSettings();
|
||||
Settings.Account = Row.Account;
|
||||
Row.Hardware = EquipmentAcquiringServer.GetAcquiringHardware(Settings);
|
||||
If Not Row.Hardware.IsEmpty() Then
|
||||
Row.PaymentInFiscalPrinterMode =
|
||||
CommonFunctionsServer.GetRefAttribute(Row.Hardware, "PaymentInFiscalPrinterMode");
|
||||
EndIf;
|
||||
EndIf;
|
||||
|
||||
Items.Payments.CurrentRow = Row.GetID();
|
||||
|
@@ -84,9 +84,11 @@ Procedure Filling(FillingData, FillingText, StandardProcessing)
|
||||
ThisObject.BasisDocument = Basis;
|
||||
If TypeOf(Basis) = Type("DocumentRef.RetailReceiptCorrection") Then
|
||||
ThisObject.BasisDocumentFiscalNumber = Basis.BasisDocumentFiscalNumber;
|
||||
ThisObject.BasisDocumentShiftNumber = Basis.BasisDocumentShiftNumber;
|
||||
Else
|
||||
FiscalBasisData = InformationRegisters.DocumentFiscalStatus.GetStatusData(Basis);
|
||||
ThisObject.BasisDocumentFiscalNumber = FiscalBasisData.CheckNumber;
|
||||
ThisObject.BasisDocumentShiftNumber = FiscalBasisData.ShiftNumber;
|
||||
EndIf;
|
||||
|
||||
ControllerClientServer_V2.SetReadOnlyProperties(ThisObject, FillingStructure);
|
||||
|
@@ -447,6 +447,24 @@
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<dataHistory>Use</dataHistory>
|
||||
</attributes>
|
||||
<attributes uuid="f1d9ebf0-6e8d-416d-a191-6a9f02b6d651">
|
||||
<name>BasisDocumentShiftNumber</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Basis document shift number</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>String</types>
|
||||
<stringQualifiers>
|
||||
<length>20</length>
|
||||
</stringQualifiers>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<fillValue xsi:type="core:UndefinedValue"/>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<dataHistory>Use</dataHistory>
|
||||
</attributes>
|
||||
<forms uuid="25f5eabb-f4ad-4a36-b595-cf68b50bc18b">
|
||||
<name>DocumentForm</name>
|
||||
<synonym>
|
||||
@@ -1439,6 +1457,20 @@
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</attributes>
|
||||
<attributes uuid="95ca2eca-17a3-4652-a547-5a5cf5fb52d0">
|
||||
<name>PaymentInFiscalPrinterMode</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Payment in fiscal printer mode</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>Boolean</types>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</attributes>
|
||||
</tabularSections>
|
||||
<tabularSections uuid="ea9bc598-0402-4151-a107-c0f62aef9194">
|
||||
<producedTypes>
|
||||
|
@@ -1612,6 +1612,20 @@
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</attributes>
|
||||
<attributes uuid="43bbadd7-fcaf-47d3-9dd3-93b9bdeea9e0">
|
||||
<name>PaymentInFiscalPrinterMode</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Payment in fiscal printer mode</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>Boolean</types>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</attributes>
|
||||
</tabularSections>
|
||||
<tabularSections uuid="644488bc-e231-458a-9cca-7f62474c809d">
|
||||
<producedTypes>
|
||||
|
@@ -1546,6 +1546,20 @@
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</attributes>
|
||||
<attributes uuid="1e8125a5-8921-475b-815a-d92c569e197b">
|
||||
<name>PaymentInFiscalPrinterMode</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Payment in fiscal printer mode</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>Boolean</types>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
</attributes>
|
||||
</tabularSections>
|
||||
<tabularSections uuid="fac862fc-34a5-4249-954f-05cc4fcff6fb">
|
||||
<producedTypes>
|
||||
|
@@ -55,6 +55,24 @@
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fillValue xsi:type="core:UndefinedValue"/>
|
||||
</resources>
|
||||
<resources uuid="badebfa3-0b35-4b94-84fd-afd47c241f8d">
|
||||
<name>ShiftNumber</name>
|
||||
<synonym>
|
||||
<key>en</key>
|
||||
<value>Shift number</value>
|
||||
</synonym>
|
||||
<type>
|
||||
<types>String</types>
|
||||
<stringQualifiers>
|
||||
<length>50</length>
|
||||
</stringQualifiers>
|
||||
</type>
|
||||
<minValue xsi:type="core:UndefinedValue"/>
|
||||
<maxValue xsi:type="core:UndefinedValue"/>
|
||||
<fullTextSearch>Use</fullTextSearch>
|
||||
<dataHistory>Use</dataHistory>
|
||||
<fillValue xsi:type="core:UndefinedValue"/>
|
||||
</resources>
|
||||
<attributes uuid="57efa06c-9cde-43c8-a1ca-1af9b4c65b19">
|
||||
<name>FiscalResponse</name>
|
||||
<synonym>
|
||||
|
@@ -20,6 +20,7 @@ Procedure SetStatus(Document, Status, FiscalResponse, DataPresentation = "") Exp
|
||||
If TypeOf(FiscalResponse) = Type("Structure") Then
|
||||
If FiscalResponse.Property("Out") And FiscalResponse.Out.Property("DocumentOutputParameters") And TypeOf(FiscalResponse.Out.DocumentOutputParameters) = Type("Structure") Then
|
||||
NewRecord.CheckNumber = Format(FiscalResponse.Out.DocumentOutputParameters.CheckNumber, "NG=");
|
||||
NewRecord.ShiftNumber = Format(FiscalResponse.Out.DocumentOutputParameters.ShiftNumber, "NG=");
|
||||
EndIf;
|
||||
EndIf;
|
||||
NewRecord.Write(True);
|
||||
@@ -36,6 +37,7 @@ EndProcedure
|
||||
// * FiscalResponse - String -
|
||||
// * DataPresentation - String -
|
||||
// * CheckNumber - String -
|
||||
// * ShiftNumber - String -
|
||||
// * IsPrinted - Boolean -
|
||||
Function GetStatusData(Document) Export
|
||||
StatusData = New Structure();
|
||||
@@ -43,12 +45,14 @@ Function GetStatusData(Document) Export
|
||||
StatusData.Insert("FiscalResponse", "");
|
||||
StatusData.Insert("DataPresentation", "");
|
||||
StatusData.Insert("CheckNumber", 0);
|
||||
StatusData.Insert("ShiftNumber", 0);
|
||||
StatusData.Insert("IsPrinted", False);
|
||||
Query = New Query;
|
||||
Query.Text = "SELECT
|
||||
| DocumentFiscalStatus.Status,
|
||||
| DocumentFiscalStatus.FiscalResponse,
|
||||
| DocumentFiscalStatus.DataPresentation,
|
||||
| DocumentFiscalStatus.ShiftNumber,
|
||||
| DocumentFiscalStatus.CheckNumber
|
||||
|FROM
|
||||
| InformationRegister.DocumentFiscalStatus AS DocumentFiscalStatus
|
||||
|
@@ -69,6 +69,7 @@ Function CommonFunctionsServer_GetAttributesFromRef() Export
|
||||
If ArrayOfErrors.Count() Then
|
||||
Unit_Service.assertFalse("Errors in : CommonFunctionsServer.GetAttributesFromRef() - String" + Chars.LF +
|
||||
StrConcat(ArrayOfErrors, Chars.LF));
|
||||
ArrayOfErrors = New Array; // Array of String
|
||||
EndIf;
|
||||
|
||||
Attributes = New Array; // Array of String
|
||||
@@ -95,6 +96,7 @@ Function CommonFunctionsServer_GetAttributesFromRef() Export
|
||||
If ArrayOfErrors.Count() Then
|
||||
Unit_Service.assertFalse("Errors in : CommonFunctionsServer.GetAttributesFromRef() - Array" + Chars.LF +
|
||||
StrConcat(ArrayOfErrors, Chars.LF));
|
||||
ArrayOfErrors = New Array; // Array of String
|
||||
EndIf;
|
||||
|
||||
Selection = Catalogs.Items.Select();
|
||||
@@ -111,8 +113,43 @@ Function CommonFunctionsServer_GetAttributesFromRef() Export
|
||||
If ArrayOfErrors.Count() Then
|
||||
Unit_Service.assertFalse("Errors in : CommonFunctionsServer.GetAttributesFromRef() - Exist Ref" + Chars.LF +
|
||||
StrConcat(ArrayOfErrors, Chars.LF));
|
||||
ArrayOfErrors = New Array; // Array of String
|
||||
EndIf;
|
||||
EndIf;
|
||||
|
||||
EmptyCRS = Documents.ConsolidatedRetailSales.EmptyRef();
|
||||
Attributes = New Array; // Array of String
|
||||
Attributes.Add("FiscalPrinter.Ref");
|
||||
Attributes.Add("FiscalPrinter.DocumentPostingAfterPrinting");
|
||||
|
||||
Result = CommonFunctionsServer.GetAttributesFromRef(EmptyCRS, Attributes); // Structure
|
||||
|
||||
If Not TypeOf(Result) = Type("Structure") Then
|
||||
ArrayOfErrors.Add("Unknown response type");
|
||||
Else
|
||||
If Not Result.Property("FiscalPrinter") Then
|
||||
ArrayOfErrors.Add("Property ""FiscalPrinter"" not found");
|
||||
ElsIf Not TypeOf(Result["FiscalPrinter"]) = Type("Structure") Then
|
||||
ArrayOfErrors.Add("Property ""FiscalPrinter"" has unknown response type");
|
||||
Else
|
||||
FiscalPrinter = Result["FiscalPrinter"]; // Structure
|
||||
If Not FiscalPrinter.Property("Ref") Then
|
||||
ArrayOfErrors.Add("Property ""FiscalPrinter.Ref"" not found");
|
||||
ElsIf Not FiscalPrinter["Ref"] = Catalogs.Hardware.EmptyRef() Then
|
||||
ArrayOfErrors.Add("Property ""FiscalPrinter.Ref"" has an invalid value");
|
||||
EndIf;
|
||||
If Not FiscalPrinter.Property("DocumentPostingAfterPrinting") Then
|
||||
ArrayOfErrors.Add("Property ""FiscalPrinter.DocumentPostingAfterPrinting"" not found");
|
||||
ElsIf Not FiscalPrinter["DocumentPostingAfterPrinting"] = False Then
|
||||
ArrayOfErrors.Add("Property ""FiscalPrinter.DocumentPostingAfterPrinting"" has an invalid value");
|
||||
EndIf;
|
||||
EndIf;
|
||||
EndIf;
|
||||
|
||||
If ArrayOfErrors.Count() Then
|
||||
Unit_Service.assertFalse("Errors in : CommonFunctionsServer.GetAttributesFromRef() - Values from Empty CRS Ref" + Chars.LF +
|
||||
StrConcat(ArrayOfErrors, Chars.LF));
|
||||
EndIf;
|
||||
|
||||
Return Undefined;
|
||||
EndFunction
|
||||
|
@@ -13,7 +13,7 @@ SalesReceiptXML1 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="100" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 15 with SLN and code control (Main Company - Consignor 1) ODS [900999000009]" Quantity="1" PaymentMethod="4" PriceWithDiscount="100" VATRate="18" VATAmount="15.25" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -30,7 +30,7 @@ SalesReceiptXML2 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="100" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899877]" Quantity="1" PaymentMethod="4" PriceWithDiscount="100" VATRate="18" VATAmount="15.25"/>
|
||||
<FiscalString AmountWithDiscount="520" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Dress XS/Blue" Quantity="1" PaymentMethod="4" PriceWithDiscount="520" VATRate="18" VATAmount="79.32"/>
|
||||
@@ -44,7 +44,7 @@ SalesReceiptXML3 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="100" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="4" PriceWithDiscount="100" VATRate="18" VATAmount="15.25"/>
|
||||
<FiscalString AmountWithDiscount="520" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Dress XS/Blue" Quantity="1" PaymentMethod="4" PriceWithDiscount="520" VATRate="18" VATAmount="79.32"/>
|
||||
@@ -59,7 +59,7 @@ SalesReceiptXML4 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="118" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="4" PriceWithDiscount="118" VATRate="18" VATAmount="18"/>
|
||||
</Positions>
|
||||
@@ -70,7 +70,7 @@ SalesReceiptXML5 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="118" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="6" PriceWithDiscount="118" VATRate="18" VATAmount="18"/>
|
||||
</Positions>
|
||||
@@ -82,7 +82,7 @@ SalesReceiptXML51 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="129.8" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="5" PriceWithDiscount="129.8" VATRate="18" VATAmount="19.8"/>
|
||||
</Positions>
|
||||
@@ -95,7 +95,7 @@ SalesReceiptXML6 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="210" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="4" PriceWithDiscount="210" VATRate="18" VATAmount="32.03"/>
|
||||
</Positions>
|
||||
@@ -107,7 +107,7 @@ SalesReceiptXML7 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="118" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="6" PriceWithDiscount="118" VATRate="18" VATAmount="18"/>
|
||||
</Positions>
|
||||
@@ -119,7 +119,7 @@ SalesReceiptXML71 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="129.8" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="5" PriceWithDiscount="129.8" VATRate="18" VATAmount="19.8"/>
|
||||
</Positions>
|
||||
@@ -131,7 +131,7 @@ SalesReceiptXML8 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="520" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Dress XS/Blue" Quantity="1" PaymentMethod="4" PriceWithDiscount="520" VATRate="18" VATAmount="79.32"/>
|
||||
</Positions>
|
||||
@@ -143,7 +143,7 @@ SalesReceiptXML9 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="442" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 11 with SLN (Main Company - Consignor 1) PZU [11111111111112]" Quantity="2" PaymentMethod="4" PriceWithDiscount="221" VATRate="18" VATAmount="67.42" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -160,7 +160,7 @@ SalesReceiptXML10 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="100" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899877]" Quantity="1" PaymentMethod="4" PriceWithDiscount="100" VATRate="18" VATAmount="15.25"/>
|
||||
<FiscalString AmountWithDiscount="520" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Dress XS/Blue" Quantity="1" PaymentMethod="4" PriceWithDiscount="520" VATRate="18" VATAmount="79.32"/>
|
||||
@@ -173,7 +173,7 @@ SalesReceiptXML11 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="200" DiscountAmount="0" MarkingCode="11111111111111111111" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899877]" Quantity="1" PaymentMethod="4" PriceWithDiscount="200" VATRate="18" VATAmount="30.51"/>
|
||||
</Positions>
|
||||
@@ -185,7 +185,7 @@ SalesReceiptXML12 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="100" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 9 with SLN (control code string, without check) ODS [999999999]" Quantity="1" PaymentMethod="4" PriceWithDiscount="100" VATRate="18" VATAmount="15.25"/>
|
||||
</Positions>
|
||||
@@ -197,7 +197,7 @@ SalesReceiptXML13 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="112" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899880]" Quantity="1" PaymentMethod="4" PriceWithDiscount="112" VATRate="18" VATAmount="17.08"/>
|
||||
</Positions>
|
||||
@@ -209,7 +209,7 @@ SalesReceiptXML14 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="112" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899880]" Quantity="1" PaymentMethod="4" PriceWithDiscount="112" VATRate="18" VATAmount="17.08"/>
|
||||
</Positions>
|
||||
@@ -220,7 +220,7 @@ SalesReceiptXML15 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="113" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899880]" Quantity="1" PaymentMethod="4" PriceWithDiscount="113" VATRate="18" VATAmount="17.24"/>
|
||||
</Positions>
|
||||
@@ -232,7 +232,7 @@ SalesReceiptXML16 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="113" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899880]" Quantity="1" PaymentMethod="4" PriceWithDiscount="113" VATRate="18" VATAmount="17.24"/>
|
||||
</Positions>
|
||||
@@ -244,7 +244,7 @@ SalesReceiptXML17 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="500" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="10" Name="Certificate without denominal [99999999999]" Quantity="1" PaymentMethod="3" PriceWithDiscount="500" VATRate="18" VATAmount="76.27"/>
|
||||
</Positions>
|
||||
@@ -256,7 +256,7 @@ SalesReceiptXML18 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="520" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Dress XS/Blue" Quantity="1" PaymentMethod="4" PriceWithDiscount="520" VATRate="18" VATAmount="79.32"/>
|
||||
<FiscalString AmountWithDiscount="200" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899880]" Quantity="1" PaymentMethod="4" PriceWithDiscount="200" VATRate="18" VATAmount="30.51"/>
|
||||
@@ -268,7 +268,7 @@ SalesReceiptXML19 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="520" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Dress XS/Blue" Quantity="1" PaymentMethod="4" PriceWithDiscount="520" VATRate="18" VATAmount="79.32"/>
|
||||
<FiscalString AmountWithDiscount="200" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 1 with SLN PZU [8908899880]" Quantity="1" PaymentMethod="4" PriceWithDiscount="200" VATRate="18" VATAmount="30.51"/>
|
||||
@@ -281,7 +281,7 @@ SalesReceiptXML20 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="300" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="10" Name="Certificate without denominal [99999999998]" Quantity="1" PaymentMethod="3" PriceWithDiscount="300" VATRate="18" VATAmount="45.76"/>
|
||||
</Positions>
|
||||
@@ -293,7 +293,7 @@ SalesReceiptXML21 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="100" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product with Unique SLN ODS [0909088998998898789]" Quantity="1" PaymentMethod="4" PriceWithDiscount="100" VATRate="18" VATAmount="15.25" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -313,7 +313,7 @@ SalesReceiptXML22 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="300" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 16 with SLN and Good code data (Main Company - Consignor 1) PZU [89000008999]" Quantity="1" PaymentMethod="4" PriceWithDiscount="300" VATRate="18" VATAmount="45.76" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -333,7 +333,7 @@ SalesReceiptXML23 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="300" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 16 with SLN and Good code data (Main Company - Consignor 1) PZU [89000008999]" Quantity="1" PaymentMethod="4" PriceWithDiscount="300" VATRate="18" VATAmount="45.76" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -353,7 +353,7 @@ SalesReceiptXML24 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="301.11" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY3" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 16 with SLN and Good code data (Main Company - Consignor 1) PZU [89000008999]" Quantity="1" PaymentMethod="4" PriceWithDiscount="301.11" VATRate="18" VATAmount="45.93" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -370,7 +370,7 @@ SalesReceiptXML25 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="301.11" DiscountAmount="0" MarkingCode="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY3" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 16 with SLN and Good code data (Main Company - Consignor 1) PZU [89000008999]" Quantity="1" PaymentMethod="4" PriceWithDiscount="301.11" VATRate="18" VATAmount="45.93" CalculationAgent="5">
|
||||
<VendorData VendorINN="1111111111" VendorName="Consignor 1" VendorPhone="+9 (000) 000-00-01"/>
|
||||
@@ -387,7 +387,7 @@ SalesReceiptXML26 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="401.11" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="4" PriceWithDiscount="401.11" VATRate="18" VATAmount="61.19">
|
||||
<GoodCodeData NotIdentified="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY8"/>
|
||||
@@ -404,7 +404,7 @@ SalesReceiptXML27 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute=""/>
|
||||
<Positions>
|
||||
<FiscalString AmountWithDiscount="401.11" DiscountAmount="0" MeasureOfQuantity="255" CalculationSubject="1" Name="Product 6 with SLN PZU [57897909799]" Quantity="1" PaymentMethod="4" PriceWithDiscount="401.11" VATRate="18" VATAmount="61.19">
|
||||
<GoodCodeData NotIdentified="Q3VycmVudCByb3cgd2lsbCBkZWNvZGUgdG8gYmFzZTY8"/>
|
||||
@@ -421,7 +421,7 @@ SalesReceiptXML28 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="715">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="715">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-19T13:24:48"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -453,7 +453,7 @@ SalesReceiptXML29 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="716">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="716">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-19T13:24:48"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -485,7 +485,7 @@ SalesReceiptXML30 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="717">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="717">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-19T14:15:51"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -517,7 +517,7 @@ SalesReceiptXML31 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="718">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="718">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-19T14:15:51"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -549,7 +549,7 @@ SalesReceiptXML32 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="719">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="719">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-19T14:50:09"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -581,7 +581,7 @@ SalesReceiptXML33 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="720">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="720">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-19T14:50:09"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -613,7 +613,7 @@ SalesReceiptXML34 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="721">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="1" TaxationSystem="0" AdditionalAttribute="721">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-20T12:00:00"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -644,7 +644,7 @@ SalesReceiptXML35 =
|
||||
"""xml
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CheckPackage>
|
||||
<Parameters CashierName="Арина Браун" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="722">
|
||||
<Parameters CashierName="Arina Brown" CashierINN="1111111111" SaleAddress="Sale address" SaleLocation="Sale location" OperationType="2" TaxationSystem="0" AdditionalAttribute="722">
|
||||
<CorrectionData Type="0" Number="0" Description="wrong VAT rate" Date="2023-12-20T12:00:00"/>
|
||||
</Parameters>
|
||||
<Positions>
|
||||
@@ -1062,7 +1062,7 @@ Scenario: _0850002 open session
|
||||
And I save the value of the field named "Number" as "$$NumberCRS11$$"
|
||||
And I parsed the log of the fiscal emulator by the path '$$LogPath$$' into the variable "ParsingResult"
|
||||
And I check "$ParsingResult$" with "0" and method is "OpenShift"
|
||||
And I check "$ParsingResult$" with "0" and data in "In.Parameter2" contains 'CashierName="Арина Браун"'
|
||||
And I check "$ParsingResult$" with "0" and data in "In.Parameter2" contains 'CashierName="Arina Brown"'
|
||||
And I check "$ParsingResult$" with "0" and data in "In.Parameter2" contains 'CashierINN="1111111111"'
|
||||
And I check "$ParsingResult$" with "0" and data in "In.Parameter2" contains 'SaleAddress="Sale address"'
|
||||
And I check "$ParsingResult$" with "0" and data in "In.Parameter2" contains 'SaleLocation="Sale location"'
|
||||
|
Reference in New Issue
Block a user