App up in 5 minutes

From OS.bee documentation
Revision as of 22:31, 31 December 2016 by Hamid (Talk | contribs) (Preparation)

Jump to: navigation, search

General information

Abstract

App up in 5 minutes is a tool-app for OSBP applications. It creates all models necessary for an OSBP app to

  • import a CSV file into a database
  • generate a complete application to process this data
  • export the modified data back into a CSV file.

This is the introduction to this app.

Copyright Notice

All rights are reserved by Compex Systemhaus GmbH. In particular, duplications, translations, microfilming, saving and processing in electronic systems are protected by copyright. Use of this manual is only authorized with the permission of Compex Systemhaus GmbH. Infringements of the law shall be punished in accordance with civil and penal laws. We have taken utmost care in putting together texts and images. Nevertheless, the possibility of errors cannot be completely ruled out. The Figures and information in this manual are only given as approximations unless expressly indicated as binding. Amendments to the manual due to amendments to the standard software remain reserved. Please note that the latest amendments to the manual can be accessed through our helpdesk at any time. The contractually agreed regulations of the licensing and maintenance of the standard software shall apply with regard to liability for any errors in the documentation. Guarantees, particularly guarantees of quality or durability can only be assumed for the manual insofar as its quality or durability are expressly stipulated as guaranteed. If you would like to make a suggestion, the Compex Team would be very pleased to hear from you.

(c) 2016-2024 Compex Systemhaus GmbH

License information

The OS.bee Software Factory is distributed under a commercial license.

The product itself is based on the OSBP Software Factory which is an "Eclipse Project". In addition, the software depends on several other open source projects, and the entire list of licenses used can be found here.

OSBP applications

The OSBP application MyFristApp should already have been generated before starting this app. You can find the instructions here.

CSV file

At least one CSV file needs to have been prepared for model expansion and data import. We use Articles.csv as the example. Please remember where you've saved this file as it will be used to create the models and import the data.

EAN;Artikelnummer;Bezeichnung_1;Bezeichnung_2;Mengeneinheit VK;Preiseinheit;Verkaufspreis;Einkaufspreis;Lieferant;LieferantenArtNr;Sortimentsbereich;Warengruppe;Grundpreis ME;Grundpreis Inhalt;Markencode;Gewichtsartikel;PLU
2328310000007;100000;Allgäuer Wildkräuterkäse;;KILO;1;2,89;1,65;70000;104556;SBV-KÄSE;114;GRAMM;100;BAA;True;
4260178730017;100001;Smoothie Kreuzbeere; ;FLASCHE;1;1,49;0,85;70000;112048;SB FRISCHE;90;MILLILITER;240;PVT;False;
4260178730024;100002;Smoothie Mango-Maracuja; ;FLASCHE;1;1,49;0,85;70000;112059;SB FRISCHE;90;MILLILITER;240;PVT;False;
4260178730031;100003;Smoothie Erdbeer-Banane; ;FLASCHE;1;1,49;0,85;70000;112061;SB FRISCHE;90;MILLILITER;240;PVT;False;
4260178730048;100004;Smoothie Treibstoff; ;FLASCHE;1;1,49;0,85;70000;112072;SB FRISCHE;90;MILLILITER;240;PVT;False;
4260178730055;100005;Smoothie Kraftpaket; ;FLASCHE;1;1,49;0,85;70000;112083;SB FRISCHE;90;MILLILITER;240;PVT;False;
4260178730093;100006;Smoothie Liebesgruß; ;FLASCHE;1;1,49;0,85;70000;112487;SB FRISCHE;90;MILLILITER;240;PVT;False;
4260178730376;100007;Smoothie Zimtbeerchen; ;FLASCHE;1;1,49;0,85;70000;113488;SB FRISCHE;90;ML;145;PVT;False;
2323450000009;100008;Le Brie mit Walnüssen;nur für denns;KILO;1;2,75;1,57;70000;115896;SBV-KÄSE;114;GRAMM;100;ÖMA;True;
2000001210727;100009;Bastiaansen Koriander;;KILO;1;2,59;1,48;70000;121072;BT-KÄSEFEI;150;GRAMM;100;BAS;True;
2000001214213;100010;Aurora Gold Winterkäse;;KILO;1;2,49;1,42;70000;121421;BT-KÄSEFEI;150;GRAMM;100;AUR;True;
2327460000004;100011;Winterkäse;;KILO;1;1,99;1,14;70000;126112;SBV-KÄSE;114;GRAMM;100;DAG;True;
2129140000003;100012;Käse mit Koriander;;KILO;1;2,59;1,48;70000;141063;BT-KÄSEFEI;150;GRAMM;100;SÖB;True;
4260189683159;100013;Kichererbsen-Kokos-Suppe;;BECHER;1;1,69;0,97;70000;174611;SB FRISCHE;135;MIL. LITER;400;RBF;False;
4260189680110;100014;Karotten-Ingwer-Suppe;;BECHER;1;1,69;0,97;70000;177816;SB FRISCHE;135;MIL. LITER;400;RBF;False;
4260189680165;100015;Kürbis-Curry-Suppe;;BECHER;1;1,69;0,97;70000;177851;SB FRISCHE;135;MIL. LITER;400;RBF;False;
;100016;Fenchel gelegt;;KILO;1;5,29;3,02;70000;207909;OBSTGEM;211;KILOGRAMM;1;;True;3271
;100017;Kohlrabi weiß;ca. 250-350g;STÜCK;1;0,89;0,51;70000;214029;OBSTGEM;222;STÜCK;1;;False;3385
2002142770009;100018;Sauerkraut natur 500g;;BECHER;1;1,79;1,02;70000;214277;OBSTGEM;222;KILOGRAMM;1;;False;3398
;100019;Paprika orange;;KILO;1;4,25;2,43;70000;217563;OBSTGEM;235;KILOGRAMM;1;;True;3551
;100020;Kiwi lose Sommerkiwi;Kal.39-42=78-84 St;STÜCK;1;0,89;0,51;70000;272136;OBSTGEM;289;STÜCK;1;;False;3901
4019339003725;100021;Thekendisplay dt.Hülsenfrüchte;;DISPLAY;1;3,69;2,11;70000;522911;TROCKEN;443;STÜCK;12;DAT;False;
4021851522998;100022;Bunte Hülsenfrüchte;;PACKUNG;1;3,59;2,05;70000;522999;TROCKEN;443;GRAMM;500;DEE;False;
4021851640036;100023;Karamellwaffeln;;PACKUNG;1;2,45;1,40;70000;640034;TROCKEN;634;GRAMM;315;DEE;False;
4012852001551;100024;Lammsbräu Dunkle Weiße;;FLASCHE;1;1,79;1,02;70000;670059;GETR/TABAK;666;LITER;1;NEU;False;
4012852001605;100025;Lammsbräu Schankbier;;FLASCHE;1;1,79;1,02;70000;670083;GETR/TABAK;666;LITER;1;NEU;False;
4004191001019;100026;Roter Rabenhorster;;FLASCHE;1;2,49;1,42;70000;715228;GETR/TABAK;680;LITER;1;RBT;False;
4004191002061;100027;Rabenhorster Granatapfel;;FLASCHE;1;2,49;1,42;70000;715239;GETR/TABAK;680;LITER;1;RBT;False;
;100028;Strauchtomaten;;KILO;1;3,99;2,28;74300;1275;OBSTGEM;235;KILOGRAMM;1;ÖFI;True;3539
;100029;Chicoree;;KILO;1;2,49;1,42;74300;1321;OBSTGEM;206;KILOGRAMM;1;ÖFI;True;3340
2137550000001;100030;Ziegencamembert natur;;KILO;1;2,59;1,48;202104;11000;BT-KÄSEFEI;150;GRAMM;100;KÄL;True;
2195010000008;100031;Ziegencamembert natur;;KILO;1;2,59;1,48;202104;11000;BT-KÄSEFEI;150;GRAMM;100;KÄL;True;
2195970000001;100032;Ziegencamembert Gewürz-;rädle;KILO;1;2,59;1,48;202104;11001;SB FRISCHE;104;GRAMM;100;KÄL;True;
2461380000000;100033;Putenschnitzel;ca.300 g;KILO;1;9,89;5,65;202195;6138;SB FLEISCH;121;GRAMM;100;ALM;True;
2023074031129;100034;Rabenhorst Weizengras;;FLASCHE;1;2,49;1,42;202307;403112;GETR/TABAK;680;LITER;1;RBN;False;
;100035;Nagellack sharp rosé;;FLASCHE;1;3,15;1,80;202515;40194;KOSMETIK;795;MILLILITER;9;BEN;False;
;100036;Nagellack delicious viole;;FLASCHE;1;3,15;1,80;202515;40195;KOSMETIK;795;MILLILITER;9;BEN;False;
;100037;Nagellack spicy chocolate;;FLASCHE;1;3,15;1,80;202515;40196;KOSMETIK;795;MILLILITER;9;BEN;False;
;100038;Nagellack vintage red;;FLASCHE;1;3,15;1,80;202515;40197;KOSMETIK;795;MILLILITER;9;BEN;False;
;100039;Nagellack wild orchid;;FLASCHE;1;3,15;1,80;202515;40198;KOSMETIK;795;MILLILITER;9;BEN;False;
4033977402009;100040;Haarpflegebürste,oval;;STÜCK;1;14,90;8,51;202515;48210;KOSMETIK;764;STÜCK;1;KKA;False;
4033977403006;100041;Haarpflegebürste,ergon;;STÜCK;1;14,90;8,51;202515;48211;KOSMETIK;764;STÜCK;1;KKA;False;
4033977401002;100042;Haarpflegebürste schmal;;STÜCK;1;14,90;8,51;202515;48356;KOSMETIK;764;STÜCK;1;KKA;False;

App up in 5 minutes


Preparation


Before starting the app, we need to perform the following steps from within Eclipse:

  1. Change the Text file encoding to UTF-8 in Preferences -> General -> Workspace. Click on Apply.

    C2a 01 prep encoding.png



  2. In Preferences -> OSBP Application Configuration, change the Product Configuration from workspace to the OSBP project which you want to use, in this case org.osbp.myfirstapp.product. Please note that your entry will not be saved. You will need to perform this step every time you reopen Preferences.

    C2a 02 prep ac 2.png



  3. In Preferences -> OSBP Application Configuration -> PersistenceUnits, copy to the clipboard the Persistence Unit name associated with your CSV file, in this case businessdata.

    C2a 03 prep pu.png



    Paste this value into the field Persistence unit to use in entity in Preferences -> OSBP CSV2APP.

    C2a 04 prep c2a 1.png



  4. Configure all DSL model paths which will be modified after running this app. These models can be found in the model directory of the OSBP Project, in this case org.osbp.myfirstapp.model.*/models/:

    • We shall use the entity model as the example:

      1. Click Browse...

        Entity model is the file myfirstapp.entity, which can be found in org.osbp.myfirstapp.model.core/models/.

        C2a 04 prep c2a 2.png



      2. Click on the file name and then click on Open.

        The configuration of the Entity model is complete.

        C2a 04 prep c2a 3.png



    • All other models could be configured in the same way as the Entity model:
      • DTO model is the file myfirstapp.dto, which can be found in org.osbp.myfirstapp.model.core/models/.
      • DataInterchange model is the file myfirstapp.data, which can be found in org.osbp.myfirstapp.model.datainterchange/models/.
      • Datamart model is the file myfirstapp.datamart, which can be found in org.osbp.myfirstapp.model.datamart/models/.
      • Table model is the file myfirstapp.table, which can be found in org.osbp.myfirstapp.model.table/models/.
      • UI model is the file myfirstapp.ui, which can be found in org.osbp.myfirstapp.model.dialog/models/.
      • Dialog model is the file myfirstapp.dialog, which can be found in org.osbp.myfirstapp.model.dialog/models/.
      • Perspective model is the file myfirstapp.perspective, which can be found in org.osbp.myfirstapp.model.perspective/models/.
      • Menu model is the file myfirstapp.menu, which can be found in org.osbp.myfirstapp.model.menu/models/.
      • Action model is the file myfirstapp.action, which can be found in org.osbp.myfirstapp.model.action/models/.
      • Authorization model is the file myfirstapp.authorization, which can be found in org.osbp.myfirstapp.model.authorization/models/.

    • The configuration of all models has been completed. Click on Apply.

      C2a 04 prep c2a 4.png



  5. Change the delimiter to use according to your CSV file when necessary. Click Apply to confirm. In this case we change it to ;.

    C2a 04 prep c2a 5.png



  6. Click OK to close the Perferences window.

  7. Find out your CSV file, click and drag it to Eclipse workspace.

    C2a 05 prep article loc.png



    • The CSV file looks like this in Eclipse.

      C2a 06 prep article ide.png



Create DSL models


  1. On the top right conner of the CSV file, there is a button Create App. All DSL models based on this CSV file will be generated automatically by clicking this button.

    C2a 10 ca article .png



    • Click it, and there will be no pop-up message shown. If you want to know the progress, please check the right bottom corner of Eclipse or the progress window.

      C2a 11 ca bw.png



    • Please notice that, the data will be not imported automatically, only data models changed in this step.

  2. When it finishes building workspace, you could check all the models we configured in preparation step, they should be all modified according to CSV file.

    • In entity model, new entity Articles is generated. The entity name is the name of CSV file, and all attributes are defined according to the column names of CSV file.

      C2a 12 ca entity.png



    • In dto model, a new dto ArticlesDto is generated based on the new entity.

      C2a 12 ca dto.png



    • In ui model, a new ui Articles is generated based on new dto.

      C2a 12 ca ui.png



    • In action model, 2 new toolbars Articles_dialog and Articles_table are generated, they will be used on the new dialog and table.

      C2a 12 ca action.png



    • In datamart model, a new datamart Articles is generated for the new entity.

      C2a 12 ca datamart.png



    • In table model, a new table Articles is generated for the new datamart.

      C2a 12 ca table.png



    • In dialog model, a new dialog Articles is generated based on ui and action model.

      C2a 12 ca dialog.png



    • In authorization model, a new row is added for the new entity.

      C2a 12 ca auth.png



    • In perspective model, a new perspective Articles is generated for the new table and new dialog.

      C2a 12 ca perspective.png



    • In menu model, a new menu Applications is generated, in which entry Articles are defined for the new perspective.

      C2a 12 ca menu.png



    • In datainterchange model, new datainterchage articles is defined. The the CSV file path saved here, it is very important for the data import. If you move the CSV file, please do not forget to change the path here as well.

      C2a 12 ca datainterchange.png



Import data


Data could be imported after start the OSBP application.

  1. Start MyFirstApp (How to start MyFirstApp).

  2. Copy the URL into your browser:
    http://localhost:8081/myfirstapp

  3. Enter the user name and password in log in page, e.g. Admin, Admin, save the password and log in.

    C2a 14 web.png



  4. Click the menu list, you could see at the end of the list, a new entry Applications is generated.

    C2a 14 web menu.png



  5. Expand this entry and click Articles.

    C2a 14 web menu 2.png



  6. On left top of the page, the 1.st button from left can be used to import data.

    C2a 15 web import 2.png



  7. Wait for a few seconds, you could see all data in CSV file is imported.

    C2a 15 web import finish.png