chromispos / chromispos Goto Github PK
View Code? Open in Web Editor NEWChromis POS the new face of Open Source POS
Chromis POS the new face of Open Source POS
29th February 2016 Release:v0.56 Moved main locales out of country folders Fixes to dialogbox when using dark colour themes. Updated some of the locales files with updates provided by users Updated Migration routine uses new process and cover the latest version, added progress bar Added fix from Wildfox coder for CSV import Allow reset of pickup ID within application Added custom error sound option, modified from John B code Added autocomplete to products packproduct Added John B change to only load products after filter is applied Source code ability to add menu options without removing existing menu. Adding fixes from John B for promotions and Added date of birth to customer records *********************************************************************************************************** 2nd February 2016 Release: v0.55 Update to the convert routine Update to create\upgrade dialog boxes Refactor of columms in Derby database to resolve the foreign key issue, which is caused by different columns size, in databases that are converted. Added recipes (formally product kit). Improved barcode printign routine to allow the software to use graphics for barcodes not supported by the printer. *********************************************************************************************************** 10th January 2016 Release: v0.54.4 Update convert routine, This will allow updates from version 2.50 of Unicenta and Openbravo, the convertor from these versions will still require user intervention to complete the process. Bugs fixes Bug around max change resolved Features Long names displayed in products and customer panels New config panel to separate the restaurant settings Autorefresh on tables, if enabled will auto refresh tables view every 5 seconds Added option to allow auto popup of layaways Added option to allow the table buttons to be located from floors Allow edit of historic ticket providing the day is not closed *********************************************************************************************************** 3rd January 2016 Release: v0.54.3 Bug fixes #41 Debit Sales locked - if payment is made against customer, does not reflect in layaways #42 Update from v0.54.1 failing #43 Exit button on info panel Features Moved tiptext messages to pos_messages *********************************************************************************************************** 2nd January 2016 Release: v0.54.2 Release to fix bugs identified in v0.54.1 Also included change limit feature, to prevent barcode number being used for change. *********************************************************************************************************** 28th December 2015 Release: v0.54.1/0 Release to fix bug#34, this was caused by a source code merged - only affects creating new tables *********************************************************************************************************** 27th December 2015 Release: v0.54 *********************************************** PLEASE NOTE THAT SHARED TICKETS IS DELETED AS PART OF THIS UPGRADE PROCESS. THIS IS REQUIRED TO ALLOW CHANGES TO WORK WITHOUT ERRORS *********************************************** Bugs #24 Sales as refunds fixed #26 Report error fixed #27 Multiple auxiliary items fixed #28 new customers fixed #29 customer adding fixed #30 Checkin/out report fixed #32 printAlias bug fixed allows printing of & Other errors - Fixed csv import error - Customer Display routine updated Features - All reports have been moved out of the jar file, making it easier to add your own reports or customize existing reports. - Reports now load dynamically, based upon database type. - Fixed some reports that did not work with all database version. - All locales have been moved from the jar file, allowing easier editing. - Change Icon colours from the configuration panel. - Added new event for scripts 'ticket.save' - Added new promotions engines. - fixed issue with customer display, user can now select which display type in configuration. - Using '+' key on sales screen for quick sales, now reads name of product in by default. - merged branches from Github into the main code. - Only create pickup id if order contains ptoducts. - Improved the way layaways are handled, The ticket will always retain original owner and ID. - Pickup ID can be used for layaways id - csv now able to create categories if required - csv now has progress bar during import routine *********************************************************************************************************** 2nd December Release: v0.53.3 This changes the resources, to match new tickettype, which make the scripts more readable. In version v0.32.3 these scripts are converted automatically. The conversion can be run manually, if required by running resettickettype from the Chomis program folder. *********************************************************************************************************** 1st December 2015 Release: v0.53.2 New features Added toggle type switches in place of simple checkboxes. Improved Autologoff routine Updated the way config properties are handled ready for later changes Display Categories using show number, if number is null then displays these in name order. New set of coloured icons available - Orange Bug #21 Error in Auxiliary Products caused by incorrect column name - fixed Bug #20 Historic items sent to kitchen printer - fixed Bug #19 Incorrect tendered amount in reprint - fixed in templates. #Fixed issue in config, no longer asks to save when no changes have been made to the configuration. #Fixed case issue in liquibase script #Fixed issue with new refund routine *********************************************************************************************************** 14th November 2015 Release: v0.53.1 Fix for derby upgrade fail. Found in v0.53. As part of this the product pack, auto refresh implemented on the product pack. ********************************************************************************************************** 11th November 2015 Release: v0.53 Bug #16 variable price, product screen display affected only, now resolved Bug #15 Delete freshly added products - Thanks Wildfox coder Bug #14 CSV import updated and resolved Bug #17 Refund bug inherited from Unicenta and Openbravo, user can refund dame recipt multiple times Bug #9 CustomerView generates insert & Update on load - thanks tsmi * Included new CSV import - Thanks Wildfox coder * Refactor of derby database code, since derby 10.10.20 they boolean function changed. to use true/false rather than 1/0. Table changed to allow the new fucntion. * Addition of pack product feature from John Barrett, including new table ready for stock app import. * Barcode changed to allow ISBn-13 codes to be recognized. * Migrate routine updated to allow for new changes. * New event script added 'ticket.pretotals' this runs before the totals are displayed on the screen. * Display.consolidation updated display.consolidatedwithoutprice if true does not use price when consolidating on screen tickets only workis if display.consolidated=true, to switch on on screen consolidation * Option to hide the default product popup * Added usb to print options, works the same way as raw, except it make it easier to implement *********************************************************************************************************** 18th October Release: v0.52 Bug #6 - Multi install error - fixed Bug #8 - Ticket.Buttons - fixed error Bug #10 - Barcode printing, issue printing some barcode type in reports - fixed Automatic barcode type recognition routine added. When a product is saved the type of barcode is calculated using some basic formulas * if it contains no numeric characters, is is flagged as CODE128 * 7 digits with correct checksum - UPC-E * 8 digits with correct checksum - EAN-8 * 12 digits with correct checksum - UPC-A * 13 digits with correct checksum - EAN-13 * 14 digits with correct checksum - GTIN Any code above with the incorrect checksum if defined as null, this is is required as some scanners will reject the code. This is not used for general scanning only when printing reports. Drag'n'drop images into chromis for stock records. Updated ready for the new version of the Kitchen Screen Application V1.50. More general tidy up of the code. Merged changes from John Barrett in to the main code. *********************************************************************************************************** 21st September 2015 Release: v0.51 Fixed SQL errors in Convert and it now informs the the user of its progress via a progress bar. * Default Icon colours changed. * Added the ability for the user to change the colout of the icons. Located in the install folder is folder called icon sets, copy the the required jar to the lIb folder to changethe colours * Identified bug in look and feel, unrequired lib file, now fixed * Found issue of missing field in products when coming from 3.70 - fixed * Found issue with rightslevel moving from 3.70 - fixed * Update ticket.buttons to point to image library for built in buttons. Maintains consistency * New shortcut icons now in use - thanks Fanzam * Text version of permissions now deactivated by default, On custom permissions will need to be added to the database. * Started to tidy the message dialog boxes. * The main bug is fix in variable barcodes, these have now been written to comply with GS1 UK & GS1 US. Included is a pdf which explains how these barcodes work and how to set them up correctly in Chromis. * Plus a number of bug fixes supplied by John Barrett, thanks John. bug #5 All icons set to use 18x18 size to maintain consistency - fixed
How to build and run?
I have just cloned the repository and tried to open the project in NetBeans - The build files seem to be missing.
Also please clarify the baseline for this source - is it 3.81 with johnl modifications?
Thanks
http://docs.oracle.com/cd/E50453_01/doc.80/e50452/create_japps.htm#NBDAG2974
You can reproduce the issue by installing ChromisPOS on mysql/Linux with the default settings or if you set:
lower_case_table_names = 0
in my.cnf
The problem will happen when create database and ChromisPOS will not work properly.
Some hosting providers have this settings and don't allow change it.
The problem will not happen if you set:
lower_case_table_names = 1
The problem certainly happens on Linux (probably Mac too, but not sure for Windows because Windows file system is case insensitive). Since, mostly providers use Linux, it is pretty big issue.
I will be adding better promotions handling into Chromis and would like input on how it will work. Please can you read my proposal below and add suggestions to this issue report.
Below is a summary of the database changes needed to support what I need.
There will be a table containing lists of promotions, including a CRITERIA to select the products included (all, by category, by name, by date, by product reference etc) and a SCRIPT that will perform changes to the ticket if a selected product is included in the sale. (existing promotion scripts can be used with slight modifications)
A second table will allow individual products to be manually added or removed from any promotion. This will over-ride the CRITERIA.
A new panel will be created under the STOCK panel that will allow PROMOTIONS to be edited.
A new report will be created to detail promotions.
A new DataLogic object will be created to provide support functions to SCRIPTS used in the promotions, such as ApplyTicketDiscount( percent ), ApplyLineDiscount( line, percent ), AlterLinePrice( line, newprice ) etc,
<createTable tableName="PROMOTEDPRODUCTS">
<column name="PROMOTIONID" type="varchar(50)"/>
<column name="PRODUCTID" type="varchar(255)"/>
<column name="INCLUDED" type="${boolean.type}" defaultValueBoolean="true">
<constraints nullable="false"/>
</column>
</createTable>
<addForeignKeyConstraint
constraintName ="PROMOTEDPRODUCTS_FK_1"
baseTableName="PROMOTEDPRODUCTS"
baseColumnNames="PRODUCTID"
referencedTableName="PRODUCTS"
referencedColumnNames = "ID"
/>
<addForeignKeyConstraint
constraintName ="PROMOTEDPRODUCTS_FK_2"
baseTableName="PROMOTEDPRODUCTS"
baseColumnNames="PROMOTIONID"
referencedTableName="PROMOTIONS"
referencedColumnNames = "ID"
/>
<insert tableName="PROMOTIONS">
<column name="ID" value="0"/>
<column name="NAME" value="BOGOFF"/>
<column name="SCRIPT" valueBlobResource="/uk/chromis/pos/promotions/bogoff.txt"/>
</insert>
<insert tableName="PROMOTIONS">
<column name="ID" value="1"/>
<column name="NAME" value="THREE4TWO"/>
<column name="SCRIPT" valueBlobResource="/uk/chromis/pos/promotions/three4two.txt"/>
</insert>
<insert tableName="PROMOTIONS">
<column name="ID" value="2"/>
<column name="NAME" value="10% Off"/>
<column name="SCRIPT" valueBlobResource="/uk/chromis/pos/promotions/percentoff10.txt"/>
</insert>
<insert tableName="PROMOTIONS">
<column name="ID" value="3"/>
<column name="NAME" value="MULTIBUY"/>
<column name="SCRIPT" valueBlobResource="/uk/chromis/pos/promotions/multibuy.txt"/>
</insert>
</changeSet>
is there any way we can connect another scanner on chromis pos? it seems like it cannot detect anything else...
I just found this priceless application and not sure if this is place to ask for help. If not my sincerest apology.
I'm not a programmer and would like to know how to change the name Chromis V0.53.1, that is displayed on the top left side of the window.
Thanks and best regards
Jomes
The Warranty column must use the value 24 and not 25 from the given array.
I lost these entries after the upgrade and had to re-enter them manually, there is no reason for them not to be added to the standard menus for everyone but even if not, the upgrade should not over-write existing entries.
Under : submenu.addTitle("Menu.StockManagement.Reports");
submenu.addPanel("/uk/chromis/images/reports.png", "Menu.InventoryReOrder", "/uk/chromis/reports/inventoryreorder.bs");
Under: submenu.addTitle("Menu.StockManagement.Edit");
submenu.addPanel("/uk/chromis/images/stockmaint.png", "Menu.ProductPacks", "uk.chromis.pos.inventory.ProductPacksPanel");
I downloaded the source code and was building it up found that an error happens in class CreateCentral where it is creating an object for CentralConfiguration and that class is missing in the source code.
On Installation of a new database using Postgres, the installation fails due to the use of the "valueBlobResource" attribute in createdb.xml instead of "valueBlobFile" as defined in the related xsd
I propose to develop a native Android application to collect stock data remotely and subsequently upload change requests to the database for processing via the main ChromisPos application.
This can be used during shopping trips, while taking delivery of stock at a location or during stock taking (level checking). It should be possible for multiple operators and devices to be used simultaneously and the data collected processed as a single batch.
The application should be developed in Java using the standard Android development studio as provided by Google. It will use standard Open source libraries when possible, the final product should be open source.
Supported devices should be any Android tablet or phone that has a camera. The goal would be to support as wide a range of devices as possible so the minimum Android version supported should be as old as possible.
Typical processing:
From the Android app:
From a ChromisPOS terminal:
Comments and improvement suggestions are welcome
just wondering if this project is still being developed? the last update is about one year ago
password from keyboard and by touch are not same
Many tables have 255 character ID fields used as indexes and keys. In some character sets, one character can translate to up to 4 bytes. This is compounded in some tables (PRODUCT_CAT for example) where multiple IDs are used to create a unique key.
The storage and processing overhead of this is very significant and optimisation is needed.
This can effect some MySQL installations using the MyISAM engine. The CREATE TABLE instruction can fail with the message "Specified key was too long; max key length is 1000". The solution to this is to change the default DB engine to innoDB.
Due to using mixed uper and lower case for column "PRODUCTname" in table LINEREMOVED postgres requires the selects/updates/inserts to be case sensetive
When a barcode uses - and numbers strange things happen ๐
Since this project is in need of funding how about having paid feature requests?
Someone places a feature request.
You tell the community how much funding you will need to complete the request and all the contributors to the code take a share of the funding minus hosting costs.
Many of us use this software commercially and are willing to share some of the profits with the project with the benefit of not being bound to a restrictive license.
Win-Win situation?
i need the program not to validate barcodes so that it can scan and search any code
I'm trying to install ChromisPOS 0.51 linux amd64 version on Linux Mint and getting an error dialog that says "Correct version of JRE is not detected, Please install Java 1.8 etc.."
Then it opens a web page to oracle java. Do I really need to install the oracle version of java? Doesn't ChromisPOS work with openjdk?
I had the same error message when I tried unicentapos but for some reason it continued with installation fine : ) Then I was able to start uncentapos and it worked -seemingly- fine with openjdk-7. But I cannot install chromispos at all, maybe if I was able to install, it would work as well?
I've also tried installing openjdk-8 (which I believe provides java 1.8) and it didn't work.
I'm a little confused by this project. Where is the source code for version .80 and .81 that have been released on SourceForge?
Hey guys, Iv had chromis POS for a while now and in my products section, all my products have turned invisible! and when i put another product in,that product becomes invisible too! Which means I can no longer edit any of my items. Please help me as i am running a business and i need this system to keep working! Thanks,Sam
Running under Netbeans shows an error message, I tracked it as far as JRViewer300.java in the paintPage function during the call to exporter.exportReport(). It looks like a library version incompatability or missing jar file needed by JasperReports.
I do not need this report so have disabled it in my version by editing the menu,root resource.
In my resources ticket.close script there was a reference to and initialisation of a PosApps object, I assume this is an unused remnant of unipos.
PosApps no longer exists in Chromis so either the object library needs adding to the project or the reference in the resources table needs removing by the conversion routines.
hi there,
iam new here,but i wanna ask why my stock doesnt deduct after sales being made?
iam trying unicenta,openbravopos and no luck..its the same..
would anyone assist me for this?
iam still trying to figure it out using php and postgresql..
if i can find the sales script i think it alot more easy..
thanks.
cashclosed report show error when press for run
I was going to look at problems with product packs and using Derby database and got bogged down because there are other more serious issues with using Derby.
Derby database DOES support the boolean data type so why is this line at the top of createdb.xml and updatedb.xml?
<property name="boolean.type" value="smallint" dbms="derby"/>
This means you cannot use true and false as values for any field defined as boolean.type
I tried changing to;
but that causes many more issues in the files because values are often set to 0 or 1.
This is a bigger job than I have time for and until it is fixed I cannot create a derby database to test product packs with.
my bar code printer does not comes with any barcode offline software..is there anyway for me to print barcodes using chromis....i need to print bar codes stickers for my products..tq
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.