* #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>
* Update multiple common picture icons
Replaces or updates the PNG images for various icons in IRP/src/CommonPictures. This may include visual improvements, refreshed designs, or other graphical changes to the application's icon set.
* Add and update common pictures and command icons
Introduced new common pictures and their metadata for various UI elements, updated references to use these new images in forms and modules, and replaced several standard and old icons with custom ones for improved consistency. Also set certain payment form fields to disabled and adjusted command order in configuration.
* Update form icons to use CommonPicture references
Replaced various StdPicture image references with CommonPicture equivalents across multiple form XML files for consistency and improved maintainability. This affects document forms, data processors, and common forms, updating icons for actions such as accounting edits, quantity edits, linking/unlinking documents, and row calculations.
* Disable search and view additions in POS form
Set 'enabled' to false for multiple searchStringAddition, viewStatusAddition, and searchControlAddition elements throughout the PointOfSale Form. Also updated header picture reference and disabled certain controls to restrict user interaction and visibility.
* Update page icons in POS form
Added 'CashOk' icon to a page group and changed another page group's icon from 'Purchase' to 'AddItem' in the PointOfSale Form. This improves visual identification of actions within the form.
* Add dashboard settings and update demo features
Added DashboardSettings.json. Updated LoadDemoBD.feature and Podgotovka.feature for External, and _9999 DemoDB.feature
* Update RowIDs catalog objects in LoadDemoBD.feature
* #IRP-578
* Add tests for stock correction with source of origin
Introduced new test scenario for landed cost stock correction involving source of origin in LandedCost.feature. Added related data preparation steps and a new .mxl template for batch balance verification.
* Update LandedCost.feature
---------
Co-authored-by: Andrey Vorobyov <andrey.vorobyov@mail.com>
Co-authored-by: Natalia Trukhachova <66120736+Severnity@users.noreply.github.com>
Introduced a mechanism to filter internal commands based on functional options in InternalCommandsServer. Added support for 'FunctionalOptions' in command descriptions and implemented the corresponding check. Also added 'IsUseNumberingRules' to FOServer and updated ShowNumerator_GetCommandDescription to use the new functional option.
* #IRP-483
* #IRP-483
* Add tests for negative balance control by registers
Added new feature files for actual and free stock control, serial lot number stock control, and stock inventory control under Internal/_8800 Negative balance control by registers. Extended ImportData.feature with scenarios for creating UserSettings records for various stock and cash controls.
* Add tests for cash on hand and other period expense/revenue control
Added a new feature file to test negative balance control for cash and bank accounts, as well as other period expense and revenue controls.
* fix features
---------
Co-authored-by: Andrey Vorobyov <andrey.vorobyov@mail.com>
Co-authored-by: Natalia Trukhachova <66120736+Severnity@users.noreply.github.com>
* Update configuration and rights for PLSections and reports
Moved Catalog.PLSections and related enums and reports in Configuration.mdo to correct sections. Added and updated rights for Catalog.PLSections and predefined data actions in FullAccess and FullAccessNoAdminFunctions roles. Removed explicit rights for several reports from FullAccessNoAdminFunctions and added additional administrative rights restrictions.
* Add new access groups and profiles to demo DB
Introduced a new access group and corresponding access profile for 'Admin without admin functions' in the demo database. Updated related tabular sections for profiles and users, corrected language for 'Admin_EN' user, and added steps to change CI password and database status in the internal demo DB feature.
* Update _9999 DemoDB.feature
---------
Co-authored-by: Natalia Trukhachova <66120736+Severnity@users.noreply.github.com>
* #IRP-717
* #IRP-717
* #IRP-717
* #IRP-717
* #IRP-717
* #IRP-717 Add PLSections catalog test data and PL report scenario
Introduces test data creation for the PLSections catalog in the external test database feature. Adds a new scenario to check the P&L report, including setup, report generation, and result validation in the internal accounting settings feature.
* #IRP-717
---------
Co-authored-by: Andrey Vorobyov <andrey.vorobyov@mail.com>
Co-authored-by: Natalia Trukhachova <66120736+Severnity@users.noreply.github.com>
* Add demo database feature files
Added LoadDemoBD.feature and _9999 DemoDB.feature to support demo database scenarios. Updated Podgotovka.feature with additional or modified steps for external features.
Added restrictions for 'InteractiveDelete' and 'InteractiveDeletePredefinedData' rights on Task.ExecutorTasks, BusinessProcess.ExecutionProcesses, and Catalog.ExecutionTemplates objects in both FullAccess and FullAccessNoAdminFunctions roles. This enhances security by preventing deletion actions for these objects.
* Add safe storage tests
Updated _2000LoadCurrencyRate.feature to added a scenario to test security storage for integration settings.
* Add tests for WithholdingTaxInvoice (accounting)
Adjusted accounting movement checks to WithholdingTaxInvoice
* fix features
* #SDR-418 Add secure data storage for integration settings
Introduces secure storage for sensitive integration settings via a new information register and module. Adds the StoreInSecureStorage attribute to IntegrationSettings, updates forms and logic to support storing and retrieving hidden values securely, and configures roles and access rights for secure data management.
* Fix typo and add SecureDataStorage access key module
Corrects the typo 'PalceHolder' to 'PlaceHolder' in SecureDataStorage modules and updates all references. Adds ManagerModule for SecureDataStorage information register with GetAccessKey function. Excludes SecureDataStorage from access key checks in Unit_AccessSubsystem.
* Restrict SecureDataStorage read access for roles
Added or updated read rights for InformationRegister.SecureDataStorage in multiple role definitions, setting access to true but restricting it with a WHERE FALSE condition to effectively deny access. This change standardizes the handling of SecureDataStorage read permissions across BasicRole, FullAccess, FullAccessNoAdminFunctions, and FullAccessOnlyRead roles.
* Update _2000LoadCurrencyRate.feature
* Update connection setting retrieval in FillByDefaultAtServer
Replaced GetConnectionSetting() with IntegrationServer.ConnectionSettingTemplate using Object.IntegrationType and Object to obtain connection settings. This change ensures the correct template is used based on the integration type.
* Rename parameter in Unit_SendRequestClientServer
Changed the parameter name from ConnectionSetting to ConnectionSettingData in Unit_SendRequestClientServer and assigned its Value to ConnectionSetting. This clarifies the source of the connection settings and improves code readability.
* Handle ConnectionSettingData without Value property
Updated Unit_SendRequestClientServer to support cases where ConnectionSettingData may not have a Value property or is not a Structure. This improves robustness when handling different types of input for connection settings.
* Exclude SecureDataStorage from tree population
Updated the FillTree procedure to skip the InformationRegisters.SecureDataStorage entry when populating the tree. This prevents SecureDataStorage from being included in the form's metadata tree.
---------
Co-authored-by: Natalia Trukhachova <66120736+Severnity@users.noreply.github.com>
Changed IDs for GroupNumerator and its extended tooltip in PurchaseOrder form, and for ItemListIsUnlockItemKey and its context menu in SalesOrder form to maintain consistency or resolve conflicts.
Replaced ExecuteNotifyProcessing with RunCallback in multiple modules for consistency in callback execution. Updated server calls in EditCondition and RunSession modules to use new server functions. Minor fix in OutgoingMessage form to set ReadOnly property on ThisObject instead of ThisForm. Added missing &AtServer annotation in AccountantAutomatedWorkplace form.