CEMROX POS AC is a comprehensive paid open-source point of sale solution.

One Time Payment - Lifetime Updates - 3 Months Free Support

Change Log

Please always download the latest release for stability.
1Cemrox POS AC - 05 March, 2023
 Upgrade DevExpress to v22.2.4.23057.
 Change uiMainInventory Layout Size and Update Button Sizes, Make BarManager Footer BarButtonItem.BeginGroup = False.
2Cemrox POS AC - 04 March, 2023
 Sales Invoice Send to WhatsApp button was throw exception when client not provided. we add a message to allow dialog to be shown and can add customer details manually.
3Cemrox POS AC - 03 March, 2023
  Code Refactoring Controllers, Providers, and CRUDError.cs units by merge HasError property inside CRUDError.Raise() method and remove any usage of CRUDError.HasError property.
 Visa and Credit payment method in single payment accept value greater than Final value. While it should be only Final value.
 Clients screen was throw excepption when Client Name is is empty. Because primary key was composite with ClientID, ClientName, Also Vendors, Receivers, Sales Person data-entry screens fixed for that.
 uiSalesReturn was throw exception when validate Paid value. Because it was use SalesController, It should use SalesReturnController.
4Cemrox POS AC - 16 February, 2023
 Advanced Quantity Control to show Plus and Minus button with numeric panel for Quantity fields.
 Code Refactoring, Move uiPaidDialog from Inventory folder to Dialogs folder. and rename it to PaidDialog.
 Values in numeric columns of grid views can't deleted, because RepositoryItemTextEdit.EditValueChanging was canceling it when the e.NewValue was empty. we accept changing code when e.NewValue not empty.
 opt_ShowPlusMinusButtonForQuantity column doesn't exist in database in Arabic Source.
5Cemrox POS AC - 07 February, 2023
 Send Sales Invoice via WhatsApp, Also add Sales Invoice WhatsApp Text in Options screen.
 New Demo databases Files added.
 Show a dialog if there's more than one receipt file designer *.repx in uiSales, uiSalesReturn, uiPurchase and uiPurchaseReturn. To make sure only one report pattern can be saved as *.repx file in your Workspace Reports folder.
 Support Folder Browser Dialog for the first time to select an Empty Workspace folder that will created at the first installation. and remove Options screen "System is running for the first time"  message.
 Change "Debit" to "Credit" text in Payment Methods, So all credits payments by customers will choose Credit payment method. Also Database Updater will update all old "Debit" string in sales to "Credit" string.
 Modify Visa and Credit payment methods in Sales and Purchase to make it can't be greater than final amount if single payment method is applied. For cash payment the amount can be greater than final.
 Code Refactoring OpenFileDialog instances from "xfd" to "dialog" for better code readbility.
 Remove Arabic text from some Forms, Controls Text, Comments, and most \r\n multi-line old Arabic/EN text is removed in English Source.
 Remove Arabic text from all reports XRControl.Text property in English Source. to make sure the entire system is now 100% Native English.
 Login background and login sound effects are enabled/disabled depending on Enable System Sounds option now from Options screen.
 Item that work by Barcode Scale doesn't accept Barcode that begin with 0, We remove Convert.ToInt32() part of barcode scale. and make it plain string as it is. to accept leading 0 like normal Item without scale.
6Cemrox POS AC - 31 January, 2023
  Upgrade DevExpress to v22.2.4.0.
  Disable layout customization in MemberSearchControl, as its fixed component for Search Popup Elements.
 GridView designer layout is not load when AllowColumnChooser is disabled.
 External Item Code Popup give wrong item code during fast barcode reader when filtered applied by SearchControl, The first row was taken before filtered applied. We apply filter by InventoryCache.dtItems and use drItem variable. and keep SetFocusedItem() for direct GridView click and when press by mouse as it will got item code normally.
 Contact Box is bad aligned in POS Touch version - Arabic Source.
7Cemrox POS AC - 27 January, 2023
 Support Export to Excel feature for Member Search Elements Popup.
 New Demo databases Files added.
 Barcode Symbology can saved now when save settings in Barcode Designer.
 Operation must use an updateable query exception was thrown if database file doesn't have write permissions for current user. So we add extra check to make sure Database file have read/write.
 Fields that doesn't have custom text language provide null string in screens and show empty text when using Language Builder. We add extra check to make sure to take default Native English text when field doesn't have custom language.
 Change User Language not affect main application or opened screen. Because UsersProvider.UpdateSelectedLanguage() method condition should set to userID == Privileges.UserID.
8Cemrox POS AC - 26 January, 2023
 Support Languages Backup (*.zip) for Language Builder.
 Support Ribbon Menu Designer, You can customization main Ribbon Menu now and removing menus or re-order ribbon groups and items.
 Auto set Full Control permission for Languages folder for current user when Language Builder button clicked. and remove Full Control permission check when app start each time.
 Move Browse Languages Folder from Language Selector Dialog to Language Builder Dialog.
 Prevent remove Languages folder when upgrading to new version via Setup executable file.
 Enhance GridViewLayout.cs unit, by support using block to dispose MemoryStream and replace empty string check with Trim().Length with string.IsNullOrWhiteSpace().
 Privileges screen was work for everyone, we add privilage for this screen, also the Cash Drawer privilege was conflicted with Dashboard privilege.
 Sales permission not working with uiSalesRestaurant, because we was keep uiPOSTouchV3 in Privileges.cs unit after change uiPOSTouchV3 to uiSalesRestaurant, we now make a single permission for both sales invoice mode (retail and restaurant).
 Error shown when install new version executable Client Setup.exe file. because Configuration ini files was overriden.
9Cemrox POS AC - 22 January, 2023
 Add Reset button to AES 256 Encryption Key in Rebranding Tool.
 Fix Point of Sale version contact box Anchor.
 Add Recharge Card discount voucher feature in purchase invoice. (Works in Egypt)
 Enhance Rebranding Tool by double-check extensions of application logo and application icon to make sure icon only accept *.ico file and application logo accept any type of images.
 Change background music to vocal music.
 Remove Windows Media Player COM Library as its very old and show warning messages, and use Xam.Plugin.SimpleAudioPlayer nuget package.
 Update all nuget packages to latest release.
 Hide warning message "There was a mismatch between the processor architecture of the project being built.." by adding ResolveAssemblyWarnOrErrorOnTargetArchitectureMismatch property to None in Cemrox.POSAC.Business.csproj.
10Cemrox POS AC - 07 January, 2023
 New HD Sound Effects and Icons.
 Support Recharge Card discount vouchers in Arabic Source. i.e 100 sometimes can be 98 so the Vodafone 10 card can be 9.8 (Works in Egypt)
 Support External Item Code Popup feature in Sales and Purchase screens and delete old ReportItemSearchControl unit in Arabic Source, So it will worked exactly like English Source.
 Support Post Item Directly without press Enter CheckEdit in External Item Code, To choose which when you choose items in Items Search Grid posted directly to details grid lines or you need manually press Enter to make it post.
 Support SearchControl in Privileges screen.
 Support Print Barcode After Purchase Invoice Option. and add BarcodeSymbology in BarCodeDesign table to allow sumbology to be saved with barcode settings.
 Support all Barcode Symbology that are available.
 Enhance ItemSearchControl.cs component to include TextEditStyles in contrusctor. So data-entry screens will use TextEditStyles.DisableTextEditor, and reports will use TextEditStyles.Standard. Also merge some functionlities into it from ExternalItemCodePopup.cs.
 Enhance ExternalItemCodePopup.cs unit, Make it simple to direct use in (Sales, Purchase, Reports, and any screen that need search for Item Code).
 Enhance BarcodeDesigner.cs core unit that run Barcode Generator, By merge uiItems load Barcode settings and uiBarcodeDesign load barcode settings into it.
 Change uiOptions LayoutControl.Root padding to default value 10 in Arabic Source.
 Remove POS Touch v1 and POS Touch V2 options, and refactoring POS Touch version to be only two sales invoice mode (Retail Invoice, Restaurant Invoice). Also we remove uiSalesPOSv2, and rename uiSalesPOSv3 to uiSalesRestaurant.
 We delete opt_SalesPOSTouch from Company table, by add this line DropColumn("Company", "opt_SalesPOSTouch") in Database Updater.
 Remove unused E-Invoice Dialogs and Resources that reside in system.
 Remove DX KeyGen, You need to get a trial or buy DX:Winforms Subscription to build the source-code, But you can use Rebarnding Tool to generate Point of Sale Setup.exe directly.
 Remove variables that is never used to hide "The variable XX is declared but never used" warning messages.
 Restructure Items Screen Report toshow only Item Sizes that available for Item Serial, and add n2 for Conversion, PurchaseCost, SalesPrice fields.
 Change "Receit" word to "Receipt" in Sales, Purchase screens.
 Merge RefreshForms() method impl. to be inside RefreshLanguage in LanguageBuilderDialog, as RefreshForms() should execute after RefreshDataSource() because form maybe not serialized yet.
 Add form.Close() and form.Dispose() in LocalizationFormsRegister to make sure all forms is closed when doing Language Builder, Build all Forms.
 Change uiPaymentMethod fields from RightToLeft.Yes to RightToLeft.No in English Source.
 Hide uiPaidDialog Icon.
 Remove unused EInvoiceZatcaDialog, uiEInvoices, and other E-Invoice unused resources.
 Make all CalcEdit fields in Sales, Purchase invoices Appearence.TextOptions.HAlignment = Near, To make decimal value Left to Right with screen layout.
 Add large and bold font and colors to uiPurchaseReturn screen.
 Provide extra validation for Trial Mode in database, to make sure trial mode only used once.
 Support new Utils.GetUnderlyingSqlValue(object value, Type type = null) function, to get value that accepted in SQL quries. i.e. add quotes in strings, boolean will be 0 or 1. And remove old Utils.IsNumeric() during it was check a string or number value and treated it as number if it contains number, So now we treated column/field type itself.
 Add string.IsNullOrWhitespace() extra check for Decimal Columns to prevent any exception if decimal columns is empty in SalesProvider, PurchaseProvider units.
 Change Cemrox.POSAC.Client AssemblyInfo.cs AssemblyTitle, AssemblyProduct, Assembly Description to show "Point Of Sale" in Taskbar.
 Export Backup manually with button. (Company Name Backup - Date Time.accdb).
 Add PC/Machine Currency Symbol by default in Sales Restaurant Invoice Mode. if PC in USA the currency will be U.S dollar ($).
 Copy Rebranding Tool AES 256 Encryption Key option in separated DropDownButton to prevent confusing with License Generator button.
 Save sales invoice automatically after open Paid Dialog and click on Pay button.
 Support Logout Feature via Restarting application for better clear memory cache.
 Support Restart application button in main inventory client status bar.
 Support Tooltips in uiMainInventory Report Filters Buttons.
 Support Hotkeys in Sales and Purchase Invoices.
 Auto Uninstall %UserProfile%\AppData\Cemrox folder after uninstall Client Setup exe.
 Item Code column in master-details screens doesn't accept trailing string. it was treating value as integer, So after add and view the invoice the item code doesn't dispalyed or save correctly.
 uiItem Print Barcode without default printer set on PC throw NullReferenceException. We assign default printer if there's no default one.
 Language Builder throw "Access to the path XX is denied" exception from uiMainInventory when click on on Language button. We add LanguageBuilder.exe to give FullControl permissions to Languages folder.
 Clients Settlements Custom Report not working. because ReportDesignDialog of ClientsSettlementsReport was use VendorsSettlementsReport.
 Vendors Settlements Custom Report and Vendors Statement of Account use Vendors Settlements custom report. Because VendorsSettlementsReport was used for both reprots.
 ClientBalance throw exception when calling ClientProvider.GetClientBalance() with ClientID.EditValue.Tostring() when EditValue is null. Same for VendorBalance.
 CRUDControl.AfterDeserializeBuffer() throw exception in uiItems, Because IsTaxed = Convert.ToBoolean() is used with DBNull, It replaced with Utils.IsTrue().
 English Language for reports was not saved in Arabic Source after restart application. Because DBNull should set Privileges.UserLanguage before doing Convert.ToBoolean().
11Cemrox POS AC - 24 December, 2022
 Support Generate AES 256 Encryption Key in Rebranding Tool License Generator. To generate your own AES 256 Key. Or use default key that shipped with Rebranding Tool.
 Remove "Cemrox" brand from License Validator, So Rebranding will be 100% clean process.
 Remove Arabic from Delete Grid Line Button.
 Change Text description for Print Receipt while in Add State to be more precise.
 Remove additional \n character in SalesProvider.ValidateDiscountField() method.
 Add ExceptionHandler flag in uiPrivileges to show any issue happened in Privileges screen.
 We remove LastExecutedQuery from ExceptionHandler after sql query is success, So the remain exception will be for actual issue.
 Add large and bold font and colors to uiLogin screen for better user experience andtouch-friendly.
 Add large and bold font and colors to uiSales, uiSalesPOSv2, uiSalesPOSv3, uiSalesReturn, uiPurchase, uiPurchaseReturn for better user experience andtouch-friendly.
 Remove "Demo" word from first installation demo database file that created in Workspace Folder.
 Add "Walk-In Customer" Client as Default one in demo database file. So when make new sales invoice it will selected by default.
 Add new Sales Invoice Short Receipt Pattern, Its clean and simple sales receipt that have Tax and Discount% fields.
 Add Sales Invoice Footer Text MemoExEdit in Options to add custom footer text in sales invoice.
 Make Decimal Columns in Sales, Purchase GridViews accept only numbers and one decimal point to prevent any exception can occur, So letters is not accepted and cursor focus to the end of cell text.
  uiPrivielges throw exception in comboUsers_SelectedIndexChanged, because Split('\n') doesn't locateed in Privileges.ScreenDictionary for Back Office.
  Rebranding Tool Export Settings throw exception "Could not find a part of the path" message, during Backups Dir not created, We ensure Backups Dir created in %temp%/Cemrox POS AC Rebranding Settings.
12Cemrox POS AC - 21 December, 2022
 Remove Arabic from Daily Sales, Items Sales and Items Stock Taking Reports in POS Touch version.
 Remove Camera Control Menu Item, During its useless now.
 Remove Arabic from Translation Log Report.
 Remove Arabic from Main Screens Reports.
 Restructure Items List Detailed Report and show only Item Sizes that available for Item Serial, If Medium and Large not exists for item then their rows are hidden.
 Remove E-Invoice Options and their implementation durings it confuses people and its useless during its not completed itself. SO its better to make general point of sale solution without relate to specific country-feature. Also we remove QRCode and GUIDCode from Sales Invoices, and remove QRInvoices table from database.
 Resize uiOptions.cs Form for better layout in Windows 10, Windows 11.
 Replace slow XtraOpenFileDialog of DevExpress dialogs with standard windows OpenFileDialog for fast opening files.
 Sales Invoice can returned only once. otherwise error message will raise. Also Returned label added to sales invoice that is already returned.
 Add colors to Discount, Final and external Item Code fields for better user experience in sales invoice. 
 Remove Arabic Language from CRUDError.cs unit.
 Effective Material wasn't working in English Source, EffectiveMaterialModel.Validate() method the crudControl.FormControls need to pass in parameter.
 Contact Box is bad aligned in POS Touch version.
 Sales Type was incorrect encoding in Arabic language in Arabic Source.
 Date and Time Format was wrong in date or time columns in ListNavigationDialog, We add RepositoryItemDateEdit with MaskExpression yyyy/MM/dd for date, and hh:mm:ss tt for time.
 Exception message shown when database file is changed and cancel uiOptions after it raised, We add check flag exit button is clicked and no database file is exist and selected then application will exit.
 Shortcut Icon and Uninstall Icon not shown after generate Setup.exe from Rebranding Tool, We need to copy Custom Icon file to Client Dir before generate setup.
13Cemrox POS AC - 19 December, 2022
 Secure Cloud Drive Accessibility!, You can now view our Cloud Drive directly and download only files you need without need to download full 2.5 GB zip file!!.
 Merge all applications into single exe file!, for ease of use and get rid of huge amount of exe files!. You can now open Inventory Management, Report Designer, or Barcode designer from single exe file (PointOfSale.exe), So when you Rebranding the process will just be PointOfSale.exe without Cemrox.
 Add Barcode at the end of receipt to make sales return easily with just scan a barcode when make sales return!.
 Redesign Sales Invoice Receipt reports patterns and support large logo and fonts, Also add more details in the footer.
 Remove Arabic text that appears in Main Form receipt reports (Items Sales Report, Daily Payments Report, Items Movement Report, Items Inventory All Units Report, Items List Detailed Report, Items List Detailed Report, Items Expiration Report.
 Remove Arabic text that appeared in Sales Reports - Detailed was showing Arabic number in Item Serial Sales label.
 Support Localization to CRUDControl Toolbox.
 Upgrade DevExpress to
 Add Import from Barcode in Sales Return Invoice, To allow return invoice from sales invoice fotter barcode directly.
 Add Build All Forms Language Button in Language Builder to create all screens language JSON file. (Patrik Slovenia)
 Add Selected Form ComboBoxEdit to select specific form from Language Builder dialog directly. (Patrik Slovenia
 Add Clear Fields button in Rebranding Tool to clear all fields.
 Add Lifetime option to License Generator Period. So the customer can take lifetime licenses accessbility.
 Currency Symbol by default is not US dollar ($).
 Exceptions messages will be now in Invariant Culture, We also remove our company from Exception Files names which is saved in Appdata/Company/AppName/Exceptions Folder.
 Support Default Language ComboBox in Rebranding tool. So when you ship Setup.exe for your customers. A new user's language will set to default language.
 Database Update Dialog will not shown if Database path is invalid or changed. But Options Dialog will appear to choose the coorect database path.
 Upgrade Advanced Installer Setup.exe files to use LZMA compression for packaging.
 Enhancing Performance of Generate Setup file installation from Rebranding Tool. By adding Multi-Threading execution in Inno Setup Compiler for Generate Setup.exe file.
 Add Help and Watch video buttons in Rebranding tool to describe how to use a tool fluently.
 Remove WindowsFormsSettings.AnimationMode and WindowsFormsSettings.AllowHoverAnimation properties from uiLauncher.cs unit, It was Enabled but we remove it to use the default animation for controls from DevExpress.
 Update Demo Database, Set Default Precision for Quantity option to Default. It was 0, So quantity wasn't accept decimal points.
 Rebranding Tool doesn't show the imported Setup Icon. and fix RegEx patterns for License Generator fields.
 Inno Setup throw ExtractTemporaryFile exception when try to install prequesties files. We replace Inno Setup linking mecanism and copy all folders needed to a Cache folder, So the path will be %temp%/Cemrox POS AC Rebranding Settings/Cache folder.
 Discount Percentage field in Sales Return not assigned when select Sales Invoice.
 SalesProvider.CalcualteFormSummaryAfterDiscount() method was throwing exception in sales return. Because Paid2 field was calcualted. and its not exit in Sales Return.
 DeserializeLayout() method of Localization unit was deserize PictureEdit, We ignore PictureEdit, so Text property not changed.
 SerializeLayout() method of Localization unit was serilize only BaseLayoutItem.TextVisible, So BaseButton was ignored. we remove foreach filter.
 Paid Dialog's Remain field show -0.01 not 0 if we add Paid value manually, because final value is not rounded as its financial value, for example if final = 1.725 the paid is 1.73, now the remain will be minus -0.01. So we round Final value to 2 decimal points when calculate Remain field.
 Social Contact Box in POS Touch was wrong sized when change Form size. Anchor need to be Left, Bottom, Right.
 XtraReport.ApplyLocalization(culture) in XtraReportEngine.cs unit throw exception, Because it was set to language not culture.
 Thread.CurrentCulture if not set to en-US. All numerics in SQL Queries will through exceptions because it was treated comma(,) not dot (.), We use new 4.5 CultureInfo.DefaultThreadCurrentCulture property. and set it to CultureInfo.CreateSpecificCulture("en").
 A Data Type mismatch exception was thrown in CRUD.Insert(), CRUD.Update(), CRUDMasterDetails.Post(), Because we was handle Numerics as string in SQL Query, We add Utils.IsNumeric in all units, This exception conjunction with Thread.CurrentThread is patched for non-English end-users.
 CRUDControl.DeserializeBuffer() throw exception when deal with Boolean types that is not boolean by use Convert.ToBoolean(), We replace it with new Utils.IsTrue(object) Api.
 Sales Receipt Reports, the xrSalesType field doesn't shown, the BeforePrint event wasn't attached with field.
 The Allow Override Item Higher Price and Allow Override Item Lower Price privilages was reversed with each other in uiPrivileges screen. The Allow Override Item High Price treated as Low one.
 Barcode Scale by Price wasn't working, The price column is not updates while Total column is updated.
14Cemrox POS AC - 21 November, 2022
 Support localization via JSON files!, User can can select language via LanguageSelectionDialog and create his own languages with LanguageBuilderDialog, It support multi-line Text, Also a Localization.cs API introduced to be the Core unit for localizing form layouts.
 Support Rebranding Tool! You can now re-brand the whole source-code and application icons and logos with your own brand in a single click! without the need to manually replace your brand information!.
 Support a very clean public Localization API, Just two methods call and your screen will be localizable, the Localization.Initialize(LayoutControl) and Localization.ShowLanguageDialog(LayoutControl).
 Support LanguageCache unit, we need to make LayoutControl.Tag clean, So we consider implement our caching mecanism.
 Replace all executable files icons with special icon, because Rebranding tool will change all forms icons at runtime. So we removed our Cemrox icons and use a fixed special one.
 Merge License Generator into Rebranding tool. its now become a part of Rebranding Tool!, modern UI and ease of use.
 Re-design all CRUDControl screens Minimum Width to be 991, for the most complete beautiful look and feel.
 Merge features and developer guide into Installation Guide PDF document, We re-design the PDF documents.
 Make all Forms resizable now! FormBorderStyle.Sizable, During we already ship the LayoutControl component for all Forms.
 Use XRTable instead of XRLabel for Paid section in Sales Reports.
 Add try..catch block in GridView_FocusedRowChanged and GridView_CellValueChanging events in Sales and Purchase screens. To make no exception will thrown as the event only show quantity of focused item.
 In Sales Reports patterns, we swap Payment Method1 place with Payment Method2 column to make it ordered exactly like Sales Screen. Payment Method1 came first.
 We replace taking ConnectionName as connection parameters by Access2007ConnectionParameters directly in SqlDataSource.ConfigureDataConnection event inside XtraReportEngine.cs.
 Support localization via JSON files!, User can can select his own language he need from Users screen. A language.json is created in app path.
 Native English support and Remove Arabic langauge from uiWebBrowser dialog.
 Update Demo Database, Remove test user and Main Category section. We just keep it simple as it provide single category, item, user, sales invoice, and purchase invoice.
 Remove all English ToggleSwitch controls from Reports screens, As we currently will support multiple languages. We add ComboBoxEdit to select Language end-user need.
 Delete ColumnPanelRowHeight property for most GridViews in the system. because its old and was used with older versions.
 Add Sales Date in Invoice NO search field inside Sales Return screen.
 Support External Item Code Popup feature in Sales and Purchase screens, also direct search is allowed with ItemCode, Name, Category in the same external popup. without F6 needed. We also delete ReportItemSearchControl and re-structure ItemSearchControl to be main Item Coed Popup Unit base.
 Make List Navigation Feature use new DataTable for its own, So it can work in Add, Search state which CRUDControl DataTable is empty.
 Native English support and Remove Arabic langauge from uiProfitAndLossReport.
 Native English support and Remove Arabic langauge from uiItemMovementReport.
 Re-design uiBarcodeScale and add controls that are outside LayoutControl inside the LayoutControl.
 Support GridViewExtensions unit. with HighlightAutoFilterRowMatchingText() method, To allow highlight the match text of AutoFilterRow. and apply it to all GridViews in the system.
 Add ShowWebBrowserDialogAtFirstTime option in App.cs to allow to show First Time web-browser dialog for end-users or not.
 re-design Back Office dialog, Add Settings, Profit and Loss A4 reports.
 Renaming UI elements to be meaningful, Replace default control variable names i.e. replace layoutControlGroup1 with lcgSalesInvoiceDetails. also remove all LayoutItem.CustomizationFormText variables during its not used to make API clean.
 Delete unused SimpleWaitDialog form.
 flag to hide QR Code when E-Invoice is disabled.
 Support Default Client, Default Vendor, Default SalesPerson, Default Receiver that loaded by default in Sales and Purchase Invoices.
 Restructure ExceptionHandler.cs unit to loggin better user experience exception handling. Also add command variable in CRUD Unit for better debugging the SQL queries of CRUDControl Master record easily.
 Focus to Search Control directly when opening Popup via F6 on any PopupContainerEdit search fields.
 Client Image Delete Editor button doesn't work.
 System Database for Arabic Source was set to English, and examples doesn't work well.
 Sales Reports Patterns some text not translated to Arabic, and RTL layout was hide some borders.
 Sales Time field in Sales Reports Patterns doesn't work.
 Purchase Time field in Purchase Report formated with date.
 InventoryCache.RefreshAllCache() wasn't called in first installation, So exception thrown in Sales and any screen that use Items, Categories Data Tables, We remove isFirstLoad flag in uiMain forms.
 Some reports SqlDataSource.ConfigureDataConnection event not firing, So we use DevExpress.DataAccess.Sql.SqlDataSource.DisableCustomQueryValidation = true;
 SalesReport.cs and SalesReturnReport.cs doesn't work so replace them with SalesReportPattern1_NormalSUM and re-design them to be A4.
 Stock Taking throw exception when add items, During SearchControl doesn't ignored, we added it to CRUDControl.IgnoredFields.
 Privileges.VerifyUserLogin() function throw exception in very rare situation. We add try..catch block for it and return false when something wrong with privileges of login user.
 Arabic Source - Company logo not shown in all reports. XtraReportEngine class was changed it back to App.BrandLogo.
 Remain field show -0.01 not 0 if we add Paid value manually, because final value is not rounded as its financial value, for example if final = 1.725 the paid is 1.73, now the remain will be minus -0.01. So we round Final value to -2 decimal points when calculate Remain field.
 Replace the Add New Invoice context button with SimpleButton in POS v3 during sometimes it disappaired in Widnows 10.
 uiSales LayoutControl, The Paid fields was incorrectly sized. During we was resizing sliPaid.Size and sliPaymentMethod.Size at runtime.
15Cemrox POS AC - 25 October, 2022
 Enhance ItemSearchControl, By make GridControl.BeginUpdate(), GridControl.EndUpdate() called only once at startup.
 Delete height of ColumnPanelRowHeight for Damaged Stock, Stock Taking data-entry screens.
 Support Allow View Purchase Cost in Purchase Invoice feature, to make specific users view purchase cost of Purchase Invoice, If false the Total, Tax, Final columns will be hidden from current user also.
  Quantity Fractions doesn't work, Decimal Precision for Quantity and Cost/Price options inside SalesProvider and PurchaseProvider was check for Default which is 255, It should check for Default as -1 precision, That mean it will accept fractions of system default.
 Directory not found exception thrown for DebugMode.ini when AppName have space at the end i.e. "YourCompany POS ".
 Fix word reseration -> reservation in Rooms and Tables screen.
 drItem sometimes throw Object reference not set to an instance of an object. we add null-check for drItem variable in SalesProvider, PurchaseProvider.
16Cemrox POS AC - 19 October, 2022
 Support Hardware ID with CRC16 in License Generator!
 replace Radial Menu Glyph with white circle without "C" letter.
 Remove Pad Lock exception from Wrong License Key inside LicenseValidationDialog for better readable message.
 Native English support and Remove Arabic langauge from Remaining Item Search Control and other Member Search Elements.
 Native English support and Remove Arabic langauge from uiDamagedStock.
 Native English support and Remove Arabic langauge from uiDamagedStockReport.
 Native English support and Remove Arabic langauge from uiStockTaking.
 Native English support and Remove Arabic langauge from uiVourcherReceipt and uiVourcherPayment.
 Native English support and Remove Arabic langauge from ItemSummaryGeneralReport.
 Native English support and Remove Arabic langauge from Purchase Report.
 Native English support and Remove Arabic langauge from ProvidersModules folders.
 Native English support and Remove Arabic langauge from Purchase Invoice Reports.
 Native English support and Remove Arabic langauge from Client, Vendor, Sales People, Receiver A4 Reports.
 Native English support and Remove Arabic language from popupReceitReportSettings inside uiPurchase and uiPurchaseReturn.
 Native English support and Remove Arabic language from ItemReport, TaxReeport, UnitReport, UserReport, CategoryReport, CategoryLevel2Report, CategoryLevel3Report, BarCodeDesign.
 Native English support and Remove Arabic langauge from VendorSettlementAllReportReceit, VendorSettlementAllReport, ClientSettlementAllReportReceit, ClientSettlementAllReport.
 Native English support and Remove Arabic langauge from Reports/General/A4/Inventory (module).
 Native English support and Remove Arabic langauge from DatabaseUpdateDialog and uiLauncher message boxes.
 Change Header Company section and make CompanyName, Company Address from Left to Right for all reports.
 Re-design Purchase Invoice A4 and Receipt report.
 Add Unit field in A4 Sales Report.
 Replace entire Controller and Model Validate() method implementation to directly accept CRUDControl and Sender control, rather than cast each time. To increase performance and reduce memory job.
 Support Allow View Item Purchase Cost on Privileges to make specific users view purchase cost of item in Items screen or not.
 Support Back Office and List Navigator Features in Arabic Source.
 Replace 32x32 icons with high quality 16x16 icons in Arabic Source.
 Restructure code that loading the company information and the main image slider, combine them into two separated methods LoadCompanyInformation() and LoadMainImageSlider(), to used perfectly in Main Inventory Client and uiOptions.
 Company logo not shown in all reports. XtraREportEngine class was changed it back to App.BrandLogo.
 Screen Designer dialog or LayoutControl Customization Form buttons not appeared from first time.
 Validations in new LayoutControl screens is ignored, We make Validation(object sender) method search for LayoutControl, Also we delete ICRUDControl its useless for validations.
 Sales and some screens throw error in Controllers/Models validations unit. Because they was used Sender as Control not CRUDControl component.
 Main Inventory Client, the company address in status bar show the company name, not the company address.
17Cemrox POS AC - 14 October, 2022
 Native English support and Remove Arabic langauge from uiPaymentMethod.
 Native English support and Remove Arabic langauge from uiRoomsAndTables.
 Native English support and Remove Arabic langauge from uiUsers.
 Support new AdornerUIManager ValidationHint for uiPaymentMethod.
 Support new AdornerUIManager ValidationHint for uiPaymentMethod, uiUnit, uiTax, uiRoom, uiTable To highlight required fields that must entered by end-users.
 Enhance FirstTimeAdminPasswordDialog text and make button larger to be easy for first time user to set his password.
 Enhance Barcode Scale screen numbers, by set Appearance.TextOptions to Near, To make numeric text edits from Left to Right.
 Many Data-Entry screens that converted to Layout throw exception, because MainLayoutControl property was set to null.
 Some fields in Data-Entry screens in English Source have RightToLeft.Yes options. Which make Carret from RTL position.
 First time password dialog wasn't shown. System Database must not have user password by default.
 AdornerUIManager with required highlighted field is shown over other MDI forms, We turn Adorner UI inside Form.Activated, Form.Deactivate events.
 Tax ID when Edit show current Tax ID can't be default. While its focused to default Tax ID.
 Categories data-entry screens hiding Help button of CRUDControl toolbar.
 uiItems LayoutControl, Reports tab is too wide, So its hide Print Item Barcode tab.
 uiPurchase, uiPurchase Size of form need to be little wide to show all grid columns.
18Cemrox POS AC - 12 October, 2022
 Re-design Items Card by including controls within LayoutControl to make it touch-friendly and to support Screen Design.
 Re-design CategoryLevel2, CategoryLevel3 by including controls within LayoutControl to make it touch-friendly and to support Screen Design.
 Native English support and Remove Arabic language from uiSalesReport, uiPurchaseReport, and other A4 reports screens.
 Re-design uiItems and add LayoutControl inside it, to make it touch-friendly and to support Screen Design. so end-users can customise its layout. 
 Support new AdornerUIManager ValidationHint for uiItems screen, To highlight required fields that must entered by end-users.
 Support new AdornerUIManager ValidationHint for uiCategory, uiCategoryLevel2, uiCategoryLevel3	screens, To highlight required fields that must entered by end-users.
 Support new AdornerUIManager ValidationHint for uiClient, uiSalesPerson, uiVendor, uiReceiver, To highlight required fields that must entered by end-users.
 Support new AdornerUIManager ValidationHint for uiClientSettlement, uiClientVoucher, uiVendorSettlement, uiVendorVoucher To highlight required fields that must entered by end-users.
 Support new AdornerUIManager ValidationHint for uiSales, uiSalesReturn, uiPurchase, uiPurchaseReturn To highlight required fields that must entered by end-users.
 Replace 32x32 icons with high quality 16x16 icons inside some data-entry screens.
 Support new Back Office Dialog!, All data-entry screens now can directly open any Master screen i.e. Items, Categories, Settings, Payment Methods, Sales reports, etc.
 Update Developer Guide, Features, and Envato License PDF files.
 Merge ProductLogo from CoreOptions.cs to App.cs, So you can now build entire application with your brand within a single file App.cs.
 Native English support and Remove Arabic langauge from uiOptions.
 Native English support and Remove Arabic langauge from uiClientSettlement, uiVendorSettlement, uiClientVoucher, uiVendorVoucher, uiTable, uiRoom, uiSalesReport, uiPurchaseReport screens.
 Native English support and Remove Arabic langauge from uiPrivileges.
 Native English support and Remove Arabic langauge from uiMainInventory.
 Native English support and Remove Arabic langauge from entire MemberSearchElements collections.
 Native English support and Remove Arabic langauge from files that have Multiline Arabic/English texts i.e. "
and new line tags" First installation a workspace folder is generated "Cemrox POS AC Workspace" folder, It will hold Database file + Backups + Report Designs of your customer. Support List Navigation feature in CRUDControl, So you can search records in a list inside, alongside with search button or CRUD navigation. We support Demo Databases folder, So you can test the whole system functionality for Super Market/ Retail shops, Restaurants. Options applied for each activity. Add debugging Cemrox.POSAC.Client.Inventory must set as startup project inside Project section in Developer Guide PDF, and POS v3 section in Features Guide PDF. Remove AutoHeight = false from uiOptions text editors inside System Settings tab. Update images inside Cemrox POS AC Features PDF. btn_help was not working inside data-entry screens. CRUDControl.cs Discount was not applied automatically in sales return that generated from sales invoice. Payment Method, Default payment method checkbox can't used whether there's a default payment method or not. Print Vendor Items report throw exception in Items screen when click on the button. Remain Quantity in status bar inside uiSales, uiSalesReturn, uiPurchase, uiPurchaseReturn have a wrong value remain quantity. Daily Auto-Back doesn't work on primary path, while its generate auto-back in secondry path AppData/Local. Letter reports take a part from the other page when viewed as A4. This line applied to XtraReport.PaperKind = Letter reports, XtraReport.PrintingSystem.Document.AutoFitToPagesWidth = 1. Sales/Purchase invoices with decimal separater comma (,) for German culture throw an exception. Because it conflicted with SQL queries. Sales Person Report Comission produce wrong value, Multiplied by 100, Change P2 to N2. Items Inventory - Report Type, When switch Radio Buttons to Quantity option it reversed back to Cost option. uiOptions - Change LayoutControl padding to default of 10 px. Because the Save, Close buttons looks small. Remove English ToggleSwitch button, As the default source now is English, In case of the CodeCanyon is English Community.
19Cemrox POS AC - 7 October, 2022
 Begin removing Arabic from some data-entry screens and begin restructuring the project in native English only at that time, with RTL and localizations added later. 
 Redesign the Sales Invoice screen by including controls within LayoutControl to make it touch-friendly and to support Screen Design. so end-users can customise its layout. 
 Redesign CRUDControl Icons (the CRUD operations toolbox above the data-entry screens), allowing for 16x16 high-quality CRUD button icons. 
 Make CRUDControl buttons' language in Invariant native English only. 
 Sales and return invoices are now merged into the SalesProvider.cs class with a SalesType flag, so SalesReturnProvider.cs is deleted. to make maintainance easily.
 Purchase and return are now merged into PurchaseProvider.cs class with a PurchaseType flag. So PurchaseReturnProvider.cs is deleted. to make maintainance easily.
 Restructure the code within the CRUDControl. Only use Invariant Native English text in message boxes. Add Browsable (false) and DefaultValue (default) attributes to internal properties to hide them from the WinForms designer. 
 Native English support and Remove Arabic langauge from uiMainSales.
 Native English support and Remove Arabic langauge from uiMainInventory.
 Native English support and remove Arabic language from Items, Categories, Clients, Vendors, Sales Person, Receiver data-entry screens.
 Native English support and Remove Arabic langauge from Dashboard.
 Native English support and Remove Arabic langauge from Cash Drawer.
 Native English support and Remove Arabic langauge from Login Screen.
 Native English support and Remove Arabic langauge from Main Launcher Screen.
 Native English support and Remove Arabic langauge from Barcode Design Screen.
 Native English support and Remove Arabic langauge from Barcode Scale Screen.
 Support new material metal color for Ribbon status bar of uiMainInventory.
 An exception was thrown when using the restaurant's Custom Printer for Categories feature. 
 An exception is thrown when the client's database files are deleted while the configuration files are still present. 
20Cemrox POS AC - 20 September, 2022
First Release