User Tools

Site Tools


09.2017_september

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
09.2017_september [2018/04/23 15:57] – external edit 127.0.0.109.2017_september [2020/05/13 15:23] (current) – [Montag 18.09.2017] kalaschnikow
Line 1: Line 1:
 +====== 09.2017 September ======
 +
 +===== Dienstag 12.09.2017 =====
 +
 +- rm#20690 Downloading of more than 500 PO lines is possible https://cust-projects.seeburger.de/redmine/issues/20690
 + - Burkhard entscheiden lassen was mit dem Ticket zu tun ist -> er hat es auf "FIXED" gesetzt -> ist für mich erledigt
 +
 +- Burkhard fragen was man als nächstes tun soll
 +
 + - rm#21926 CR 20570: Leonardo: rejection of non-collab changes in PO history https://cust-projects.seeburger.de/redmine/issues/21926
 + - Ticket vom Markus Spang, der zu 70% erledigt ist
 +
 + - rm#22382 CR 22025: Concession - Integration of "Spot-It" application (Airbus Proof of Concept) https://cust-projects.seeburger.de/redmine/issues/22382
 + - Scheint eine komplett neue Entwicklung zu sein
 +
 +- rm#21926 CR 20570: Leonardo: rejection of non-collab changes in PO history https://cust-projects.seeburger.de/redmine/issues/21926
 + - Lieferant soll eine Möglichkeit haben eine Änderung vom Kunden zu akzeptieren oder abzulehnen
 + - Das wird über PO History gemacht
 + - Dateien
 + - /airsupply-base/src/java/com/seeburger/airsupply/changelog/control/ChangeLogScreen.java - ChangeLogScreen
 + - /airsupply-base/src/java/com/seeburger/airsupply/changelog/model/ChangeLogModel.java - Model, definiert welche Werte für SupplierAction erlaubt sind und welcher Wert gerade gewählt ist
 + - /airsupply/src/resources/airsupply.war/js/cfg/base/changelog/changelogCfg.js.inc -> spezifiziert welche Spalten werden auf dem History Screen angezeigt
 + - /smartiui/src/java/com/seeburger/smarti/sui/table/model/SuiTableConfigModel.java -> 
 +
 + - Zu tun ist:
 + - Combobox immer anzeigen
 + - Combobox nur in solchen Zeilen anzeigen wo man irgendwas ablehnen/akzeptieren kann
 + - Nach dem Speichern soll eine Meldung ausgegeben werden
 + - Markus erstellte einen Job, der dem Kunden anzeigt, ob der Lieferant etwas abgelehnt/akzeptiert hat. Der Job wurde aber vom Markus noch nicht getestet -> der Job muss getestet werden
 +
 +
 +
 +===== Mittwoch 13.09.2017 =====
 +
 +==== rm#21926 CR 20570: Leonardo: rejection of non-collab changes in PO history ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/21926
 +
 +  * Mail von Jens. Was ist das? Wie betrifft es den Task?
 +    * Zu TAIRCHGVERIFYCONFIG eine Spalte hinzufügen, die anzeigt, ob zu einem Feld Feedback gegeben werden kann
 + + PODAOImpl.getPOChangeVerifierConfigEntries() -> noch eine Spalte hinzufügen (ähnlich wie CCUSTOMCOLLAB)
 + + POChangeVerifierConfigEntry um ein Feld erweitern
 + + POChangeVerifierConfigEntryBuilder ausbauen
 + + SQL-Skripte erweitern
 + + UPDATE tjobs SET cclass = 'com.seeburger.airsupply.po.client.job.POCollabReportV4ExporterJob' WHERE cclass = 'com.seeburger.airsupply.po.manager.job.POCollabReportV4ExporterJob';
 + + alter table TAIRCHGVERIFYCONFIG add CSUPPLIERACTIONENABLED NUMBER(1) default 0;
 + + INSERT INTO tAgendaColumn (CCLIENTID,CTABLENAME,CCOLUMNNAME,CPARENTCOLUMN,CGUINAME,CCOLUMNTYPE,CREGULAREXPRESSION,CKEYCOLUMN,CDISPLAY,CSORTCOLUMN,CDEFVALUE,CREQUIRED,CUNIQUE,CDISPLAYLV,CDISPLAYDV,CLAYOUTDV,CSEQUENCEDV,CHASHEADING,CDISPLAYCSV,CVIRTUAL,CSHOULDUPDATEONSAVE) VALUES (1,'TAIRCHGVERIFYCONFIG','CSUPPLIERACTIONENABLED',null,null,'Number',null,0,2,12,0,1,0,1,1,0,12,0 ,0,0,0);
 + - Für Viktor eine einfache Methode bauen, die erlaubt für einen customerCP alle Felder (oder für ein einzelnes Feld?) zu holen, für die cSupplierActionEnabled auf 'true' steht 
 + - Beispiel: POImportProcessor.getCustomCollabFieldsConfig()
 + - Mit Burkhard besprechen warum der Code umgeschrieben wurde, wie es jetzt tut und ob ich dasgleiche für cSupplierActionEnabled machen soll
 + - Warum wurde CP-Parameter rausgeschmissen (übrigens: Kommentar stimmt nicht mehr)
 + - Testen
 + + Fix Test TestPoCollabReportCRExporterJob
 + - Job anpassen und testen
 + + ConfigMapAccessor verwenden
 + - Job testen
 + + Test-Satz -> PO = MZ_TST_001
 + - XML Datei prüfen, ob sie alle Felder hat, die in der Spec beschrieben sind (SD_AirSupply_Interfaces_PO_V14.9.xlsx, auf dem Tab "MSG_CustomerSide_BWFeeding (V4)")
 +
 +===== Donnerstag 14.09.2017 =====
 +
 +- rm#21926 CR 20570: Leonardo: rejection of non-collab changes in PO history https://cust-projects.seeburger.de/redmine/issues/21926
 + - Job anpassen und testen
 + - Burkhard: Felder "SupplierNumber" und "SupplierOrgName" sind Muss-Felder, sind aber leer (existieren im XML, sind aber nicht gefüllt)
 + - V4POExportXMLCollabReportProcessor:97
 + - poslElem.appendChild(this.createLeafElement(TAG_POS_CROSS_REF_SUPPLIERNUMBER, model.getSupplierNumber()));
 + - sollte aber wahrscheinlich getSupplierNo() sein
 + - poslElem.appendChild(this.createLeafElement(TAG_POS_CROSS_REF_SUPPLIERORGNAME, model.getSupplierOrgName()));
 + - POChangeLogReportModel soll wahrscheinlich die Felder aus der Vater-Klasse verwenden
 + - Zu TAIRCHGVERIFYCONFIG eine Spalte hinzufügen, die anzeigt, ob zu einem Feld Feedback gegeben werden kann (Accept/Reject)
 + - Für Viktor eine einfache Methode bauen, die erlaubt für einen customerCP alle Felder (oder für ein einzelnes Feld?) zu holen, für die cSupplierActionEnabled auf 'true' steht 
 + - Beispiel: POImportProcessor.getCustomCollabFieldsConfig()
 + - Mit Burkhard besprechen warum der Code umgeschrieben wurde, wie es jetzt tut und ob ich dasgleiche für cSupplierActionEnabled machen soll
 + - Warum wurde CP-Parameter rausgeschmissen (übrigens: das Kommentar stimmt nicht mehr)
 + - Hängt jetzt alles an dem Default-CP (-1000)?
 + - Testen
 +- rm#22702 POEMA: Problem with the display of special character in E-Mail Notification https://cust-projects.seeburger.de/redmine/issues/22702
 + - Old data for SoapUI
 + - Path: /portal-integration-portalmock
 + - Port: 8080
 + - Host: ZIEGLERM03
 +
 +===== Montag 18.09.2017 =====
 +
 +  * rm#21926 CR 20570: Leonardo: rejection of non-collab changes in PO history https://cust-projects.seeburger.de/redmine/issues/21926
 +  * rm#22702 POEMA: Problem with the display of special character in E-Mail Notification https://cust-projects.seeburger.de/redmine/issues/22702
 +    * SoapUI so einrichten, dass das Holen von Tokens funktioniert
 +      * POImportXMLHandler:771 -> POImportOSPHandler:107
 +      * com.seeburger.smarti.exchange.im.ImportException: We got a problem calling portal service BusinessDirectory to fetch contact email addresses for PO 'AIRB/AFR1/FAL/rm22702_10': Fatal. Request failed. HTTP Code: 500
 +      * BusinessDirectoryRESTClient.performRequest() BusinessDirectoryRESTClient:64
 +      * POImportOSPHandler:919 (accessToken holen)
 +      * NPE if "userRegistered" is not set
 +      * Cannot create unregistered user link, a configuration parameter UNREG_SUPPLIER_PORTAL_USER_PW_LOGIN_URL not specified or empty. (Code: 1505743791419)
 +        * UNREG_SUPPLIER_PORTAL_USER_PW_LOGIN_URL
 +          * INSERT INTO tConfig (CCLIENTID,CKEY,CTYPE,CVALUE,CCATEGORY) VALUES (1,'UNREG_SUPPLIER_PORTAL_USER_PW_LOGIN_URL','default','http://localhost:8380/blubberbla','-General');
 +      * hab ein SoapUI Projekt von Markus bekommen, welches schon fast fertig konfiguriert war. Dann hat es funktioniert. Wichtig dabei war, dass :
 +        * zwei Services laufen sollen
 +          * Air_Sopi_Mockservice -> createBoAccessTokensSCD -> /portal-integration-portalmock
 +          * BusinessDirectory -> /portal/busdir
 +        * smtp4dev einrichten: https://smtp4dev.codeplex.com/
 +
 +===== Dienstag 19.09.2017 =====
 +
 ++ rm#22702 POEMA: Problem with the display of special character in E-Mail Notification https://cust-projects.seeburger.de/redmine/issues/22702
 + - POImportOSPHandler:363 POImportOSPHandler.sendMessageToAddedSupplier()
 + + Das Mail-Body scheint in Ordnung zu sein. D.h. es liegt entweder an dem Wert, der im Template verwendet wird, oder an der Preprd-Konfiguration.
 + - Im Template wird der Wert aus der Relation genommen. In meinem Fall :
 + - SELECT * FROM TAIRPARTNERRELATION where cRelationId=332055 (bei anderen Beispielen wird die RelationId wohl anders sein)
 + - Wenn man dort "Airbus España" eintippt (bzw. reinkopiert) und ein Import macht, so dass eine solche Mail erzeugt wird, dann sieht das Body von der Mail in Ordnung aus.
 +- rm#22656 Central Login: user name shown as mailto: link https://cust-projects.seeburger.de/redmine/issues/22656
 + - Änderungen müssen am PoOspMixedFieldsChangeNotify gemacht
 + - Das Template, welches verwendet wird : PoOspMixedFieldsChangeNotify, aber ich hab zum Testen den folgenden verbogen: PoOspFirstOsp. D.h. :
 + - die Änderungen am PoOspFirstOsp müssen vor dem Einchecken zurückgerolltwerden
 + - this works: 
 + - <font style="display: none;">'</font>blubber@hallohallo.supplyon.com<font style="display: none;">'</font>
 +
 +===== Mittwoch 20.09.2017 =====
 +
 +==== rm#22656 Central Login: user name shown as mailto: link ====
 +https://cust-projects.seeburger.de/redmine/issues/22656 
 +  * Klären, ob das im Template gefixt werden soll, oder im Java Code
 +    * fixen
 +    * einchecken
 +
 +PoOspFirstOsp-body-english.vt :
 +
 +<code>
 +<p>
 +To login via username and password, please click <a href="$unregLoginLink">here</a>.<br>
 +Your username is: $username<br>
 +Please use the password set during registration.
 +</p>
 +
 +</code>
 +
 +
 +==== rm#22782 Smarti Admin Console not accessible ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22782#change-156857
 +
 +
 +  * bei der EJB Migration wurde die Klasse SmartiPortalSessionHandler entfernt
 +    * smarticore-9.0.1.28
 +      * SmartiWeb:540 SmartiWeb.getPortalSessionHandler()
 +        * war: portalSessionHandler = new SmartiPortalSessionHandler(clientId);
 +        * ist: throw new RuntimeException("No default handler configured (PORTAL_SESSION_HANDLER).");
 +
 +==== rm#22456 Falsche PO Remaining Quantity im Download File (CSV), aber nicht in der UI ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22456
 +
 +  * [+] Import der passenden PO
 +  * Herausfinden wo im Download diese Formatierung gemacht werden soll
 +    * Abgucken von der UI
 +      * Die Stelle finden wo das gemacht wird  
 +  * Herausfinden bei welchen Feldern Renderer angewendet werden muss
 +    * PO_RemainReceivedQty
 +    * PO_RemainShippedQty
 +    * PO_SalesPrice(?)
 +    * PO_RemainDAQty(?)
 +    * ...
 +
 +===== Donnerstag 21.09.2017 =====
 +
 +==== rm#22456 Falsche PO Remaining Quantity im Download File (CSV), aber nicht in der UI ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22456
 +
 +  * Herausfinden wo im Download diese Formatierung gemacht werden soll
 +    * Abgucken von der UI
 +      * Die Stelle finden wo das gemacht wird  
 +  * Herausfinden bei welchen Feldern Renderer angewendet werden muss
 +    * PO_RemainReceivedQty
 +    * PO_RemainShippedQty
 +    * PO_SalesPrice(?)
 +    * PO_RemainDAQty(?)
 +    * ...
 +  * POFilter
 +    * Zum Konstruktor des entsprechenden Filters einen zusätzlichen Parameter hinzufügen (csvAttribute)
 +      * RemainReceivedQtyForCSV -> POCoreModel.getRemainReceivedQtyForCSV()
 +  * podetailsCfg.js.inc
 +    * renderer ist definiert nur für FO_PO_REMAINDAQTY 
 +      * sas.po.ov.QtyFloatRenderer
 +        *     if ( meta.column.itemId == 'PO_RemainShippedQty' || meta.column.itemId == 'PO_RemainReceivedQty' || meta.column.itemId == 'PO_RemainDAQty'){
 + 
 +==== rm#22137 PO Import : Optimizing of the sequence generation for Text import ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22137
 +
 +  * PODAOImpl:4851 lineModel.setId(KeyGenerator.getNextKey(IPOConstants.KEY_GENERATOR_PO_TEXT));
 +  * Beispiel Cache: IDGenerator -> KeyGenerator.getNextKeyFor(FC_BUCKET_KEY_SEQUENCE)
 +    *  Im SQL log suchen nach SELECT ... .nextval FROM dual
 +===== Freitag 22.09.2017 =====
 +
 +==== Palletways Schnittstelle ====
 +  * [-] Datenbankschnittstelle realisieren
 +    * [-] Verbindung zwischen der Tabelle tbStatusVerlauf und dem Export-Programm erschaffen
 +      * [+] JDBC Verbindung
 +      * [+] Alle Status von der Tabelle holen
 +      * [+] Die geholten Status an Palletways schicken
 +      * [-] Spezifikation erstellen: wie ein bestimmter Status in der Tabelle gemeldet wird
 +        * [-] Aufbau der tbStatusVerlauf beschreiben
 +      * [-] Log in die Tabelle schreiben
 +
 +==== [-] Avril ====
 + - Eine TODO Liste schreiben und mit Prioritäten versehen
 +
 + - В поле Time (скрин 1, обозначено 3) передавать сразу время поступления тревоги в WSC, что бы патрулю не надо было спрашивать у оператора время тревоги и меньше тратить время на заполнение
 + 
 + & 3. Кнопку Resolv, если можно переименовать в Akt
 + 
 + - Bug: if all jobs are completed (on the tablet), then the last job is still visible on the right side. The list view is empty, but the details view - not. 
 +
 + - Bug: if all jobs are completed (by admin from web UI), then tablet receives a notification, which can be cancelled, but it is impossible to stop the sound. 
 +
 +
 +10. Добавить возможность патрулю отменить заполнение акта. Т.е. грубо говоря рядом с кнопкой Resolv должна быть кнопка Cancel, при нажатии на которую приложение спросит (лучше 2 раза) что точно он хочет отменить этот таск или нет. При отмене в админке должен этот таск маркироваться как отмененный пользователем.
 + 
 +По админке
 + 
 +1. Будет использовать анкету questionnaireId = 2, ее желательно переименовать в Häireakt
 + 
 +2. При выводе на печать предлагаю сделать два вариант. Первый вариант такой как сейчас, а второй вариант показывать только уже готовый шаблон заполненного акта. Не имеет смысла проматывать все скролбаром вниз что бы добраться до шаблона.
 + 
 +3. Добавить возможность выбора нескольких тасков и удаление их разом.
 + 
 +По шаблону акта
 + 
 +1. Между словом HÄIREAKT и номером акта добавить пробел (скрин 2)
 +2. Häire põhjustas anduri rakendumine tsoonis номер зоны, mille kutsus esile:  заменить на Häire põhjustas anduri rakendumine tsoonis: номер зоны из заполненной анкеты (скрин 2)
 +
 +===== Samstag 23.09.2017 =====
 +
 +==== Palletways Schnittstelle ====
 +  * **-** Datenbankschnittstelle realisieren
 +    * **-** Spezifikation erstellen: wie ein bestimmter Status in der Tabelle gemeldet wird
 +      * **-** Aufbau der tbStatusVerlauf beschreiben
 +    * **-** Log in die Tabelle schreiben
 +
 +===== Montag 25.09.2017 =====
 +
 +==== rm#22382 CR 22025: Concession - Integration of "Spot-It" application (Airbus Proof of Concept) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22382
 +
 +  * **-** Untersuchen was zu tun ist
 +    * **+** Ticket lesen 
 +    * **+** CR lesen 
 +    * **+** Burkhard fragen
 +      * **+** wie der Flag heißen soll -> CENABLESPOTITBUTTON
 +      * **+** Am welchen CP der Flag hängen soll (Buyer/Supplier/Benutzer) -> Buyer
 +      * **+** Wie man diese Info aus der NCR (oder User, wenn das der User sein  soll) holt
 +      * **+** URL config key? -> Wie im CR auch vorgeschlagen, SPOT_IT_URL.
 +      * **+** Reihenfolge des Buttons. -> Wie im CR an letzter Stelle hinter "History".
 +    * **-** Hr. Harazim fragen
 +      * **-** wie die URL heißen soll?
 +      * **-** wie die Parameter heißen sollen und was dort reinkommt?
 +      * **-** was tun , wenn entweder die URL mehr/weniger Parameter hat als in der JSP da sind ?
 +  * **-** flag CSPOTITBUTTONVISIBLE in tCPProfiles_SCD
 +    * tCPProfiles_SCD
 +    * DAO
 +    * Model
 +    * etc. 
 +  * **-** URL config key: SPOT_IT_URL
 +    * tConfig? 
 +  * **-** ncrDetailsCfg.js.jsp
 +    * add button
 +      * **+** add
 +      * **+** visible only for Header tab
 +      * **-** implement "on click"
 +      * **-** visible only if flag configured
 +
 +  * MaterialDetailsPanel.js
 +    * getFieldByItemId() -> Beispiel dafür, wie man ein Element (wie z.B. unser Button) aus dem DOM holt, um es später sichtbar/unsichtbar zu machen 
 +  * desadv
 +    * Beispiel für Verlassen der Anwendung beim Klick auf einen Link  
 +
 +===== Dienstag 26.09.2017 =====
 +
 +==== rm#22656 Central Login: user name shown as mailto: link (regression) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22656
 +
 +  * **+** Die restlichen templates auch anpassen
 +
 +==== rm#22382 CR 22025: Concession - Integration of "Spot-It" application (Airbus Proof of Concept) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22382
 +
 +  * **-** Untersuchen was zu tun ist
 +    * **-** Hr. Harazim fragen
 +      * **-** wie die URL heißen soll?
 +      * **-** wie die Parameter heißen sollen und was dort reinkommt?
 +      * **-** was tun , wenn entweder die URL mehr/weniger Parameter hat als in der JSP da sind ?
 +  * **-** flag CENABLESPOTITBUTTON in tCPProfiles_SCD
 +    * Test 
 +  * **-** URL config key: SPOT_IT_URL
 +    * tConfig? 
 +  * **-** ncrDetailsCfg.js.jsp
 +    * add button
 +      * **+** add
 +      * **+** visible only for Header tab
 +      * **-** implement "on click"
 +      * **-** visible only if flag configured
 +
 +  * **-** ncrDetailsPanel.js
 +    * **-** checkButtonVisibility() ausprogrammieren
 + 
 +==== rm#20874 CONCESSION - System error (S/N exceeding 4.000 characters) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/20874
 +
 +  * **+** Herausfinden was zu tun ist
 +  * **+** Ursache: ''xmlagg'', und besonders ''.extract()''
 +  * Mögliche Lösungen:
 +    * Einfach den Text abschneiden, da 4000 Zeichen für die UI absolut ausreichend sind. Nachteil: Filter funktionieren nicht 100%-ig
 +    * Models / Dimensions 
 +      * Guter Link: https://blogs.oracle.com/datawarehousing/managing-overflows-in-listagg
 +      * Im Prinzip kommt ungefähr folgendes raus:
 +<code sql>
 +CREATE OR REPLACE VIEW sno_sqm_view AS
 +SELECT
 +  TAIRNCR_SERIALNO.*,
 +  row_number() OVER (PARTITION BY CNCRHEADERID ORDER BY CSNOPOSNR) as rn
 +FROM TAIRNCR_SERIALNO;
 +
 +select * from sno_sqm_view;
 +
 +CREATE OR REPLACE VIEW sno_model_1 AS (
 +SELECT *
 +FROM sno_sqm_view 
 +  MODEL 
 +   PARTITION BY (CNCRHEADERID) 
 +   DIMENSION BY (rn)
 +   MEASURES (CSNOPOSNR, cSERIALNo, LENGTHB(cSERIALNo) len, 0 cum_len)
 +   RULES (
 +    cum_len[1] = LEN[1] + LENGTH(';'),
 +    cum_len[rn > 1] = CASE WHEN cum_len[cv()-1] + LEN[cv()] + LENGTHB(';') <= 150
 +                      THEN cum_len[cv()-1] + LEN[cv()] + LENGTHB(';')
 +                      ELSE LEN[cv()] + LENGTH(';')
 +    END));
 +
 +
 +CREATE OR REPLACE VIEW sno_model_2 AS
 +SELECT *
 +FROM sno_model_1
 +MODEL PARTITION BY (CNCRHEADERID) DIMENSION BY (rn)
 +   MEASURES (CSNOPOSNR, cserialno, len, cum_len, 0 sub_id)
 +   RULES (
 +     sub_id[1] = 1,
 +     sub_id[rn > 1] = CASE WHEN cum_len[cv()] = len[cv()] + LENGTHB(';')
 +                           THEN sub_id[cv() - 1] + 1
 +                           ELSE sub_id[cv() - 1]
 +     END);    
 +
 +
 +</code>
 +Hier hat man das gleiche Problem: Filter tun nicht 100%-ig, da pro CNCRHEADERID mehrere Zeilen rauskommen. Siehe: <code sql>SELECT
 +cNCRHeaderId,
 +LISTAGG(cSerialNo, ';') WITHIN GROUP (ORDER BY CSNOPOSNR) AS serialNumberList
 +FROM sno_model_2
 +group by cNCRHeaderId, sub_id;</code> auf unserer Test-DB.
 +
 +-> Das Ticket wurde auf "Info needed" gesetzt. SupplyOn soll entscheiden, was besser ist.
 +
 +===== Mittwoch 27.09.2017 =====
 +
 +==== rm#20874 CONCESSION - System error (S/N exceeding 4.000 characters) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/20874
 +
 +  * **-** ''listagg'' Lösung implementieren
 +    * **-** Herausfinden was genau zu tun ist
 +      * NCRDAOImpl  
 +
 +
 +==== rm#22382 CR 22025: Concession - Integration of "Spot-It" application (Airbus Proof of Concept) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22382
 +
 +  * **-** Untersuchen was zu tun ist
 +    * **-** Hr. Harazim fragen
 +      * **-** wie die URL heißen soll?
 +      * **-** wie die Parameter heißen sollen und was dort reinkommt?
 +      * **-** was tun , wenn entweder die URL mehr/weniger Parameter hat als in der JSP da sind ?
 +  * **+** flag CENABLESPOTITBUTTON in tCPProfiles_SCD
 +  * **-** flag CENABLESPOTITBUTTON in Agenda
 +  * **-** URL config key: SPOT_IT_URL
 +    * tConfig?
 +    * Beispiel: BaseHelper.getHelpsystemURL() 
 +  * **-** ncrDetailsCfg.js.jsp
 +    * add button
 +      * **+** visible only if flag configured
 +      * **-** implement "on click"
 +        * **+** implement functionality
 +        * **-** implement URL fetching  
 +
 +  * **+** ncrDetailsPanel.js
 +    * **+** checkButtonVisibility() ausprogrammieren
 +
 +==== Probleme mit airsupply_arch Schema ====
 +
 +  * **+** Mit Burkhard telefonieren
 +    * airsupply_arch  
 +      * Wie stellt man Unterschiede fest -> Nach DDL suchen
 +      * Nur meine Änderungen prüfen? -> Nein
 +      * Nur in der 11-er Version? -> 10 und 11
 +    * rm#22382 (NCR - SpotIt Button)
 +      * URL Behandlung
 +        * tConfig? -> Ja
 +        * Gibt es Standardfunktionen dafür? -> Nein, eine erstellen 
 +        * socomponents? -> Nein, im common-util-base
 +  * **-** Unterschiede feststellen (nach CREATE / ALTER suchen) und fixen
 +    * **-** Version 10
 +      * **-** suchen
 +      * **-** fixen  
 +    * **-** Version 11 
 +      * **-** suchen
 +      * **-** fixen  
 +  * **-** In den Tracker ein Feature Request eintragen: DDL feststellen und Benutzer warnen
 +    * https://cust-projects.seeburger.de/redmine/projects/eclipsesqlplugin
 + 
 +===== Donnerstag 28.09.2017 =====
 +
 +==== rm#20874 CONCESSION - System error (S/N exceeding 4.000 characters) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/20874
 +
 +  * **-** ''listagg'' Lösung implementieren
 +    * **+** Herausfinden was genau zu tun ist
 +      * NCRDAOImpl.getNCROverviewCount()  
 +      * NCRDAOImpl.getNCRModelsInternal()
 +    * Das funktioniert:
 +<code sql>
 +select CASE WHEN CNT <= 5 then STR ELSE STR||'...' END  str 
 +from (select count(*) as cnt, listagg(case when rownum <= 5 then cteststring end ,';') within group (order by null)
 +             as str from (select * from ttestagg where ROWNUM<=10));
 +</code> 
 +    * Jetzt müssen die SQLs in NCRDAOImpl.getNCROverviewCount() und NCRDAOImpl.getNCRModelsInternal() angepasst werden
 +==== rm#22382 CR 22025: Concession - Integration of "Spot-It" application (Airbus Proof of Concept) ====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22382
 +
 +  * **-** Untersuchen was zu tun ist
 +    * **-** Hr. Harazim fragen
 +      * **-** wie die URL heißen soll?
 +      * **-** wie die Parameter heißen sollen und was dort reinkommt?
 +      * **-** was tun , wenn entweder die URL mehr/weniger Parameter hat als in der JSP da sind ?
 +  * **+** flag CENABLESPOTITBUTTON in tCPProfiles_SCD
 +  * **-** flag CENABLESPOTITBUTTON in Agenda
 +  * **-** URL config key: SPOT_IT_URL
 +    * tConfig?
 +    * Beispiel: BaseHelper.getHelpsystemURL() 
 +    * Eine Standardfunktion erstellen, die URLs zusammensetzt im common-util-base Projekt
 +        * mit Udo sprechen, ob er fertig ist, damit ich da weiter machen kann 
 +
 +  * **-** ncrDetailsCfg.js.jsp
 +    * add button
 +      * **+** visible only if flag configured
 +      * **-** implement "on click"
 +        * **+** implement functionality
 +        * **-** implement URL fetching  
 +
 +  * **+** ncrDetailsPanel.js
 +    * **+** checkButtonVisibility() ausprogrammieren
 +
 +
 +==== rm#22895 Synchronize database schemata SEESCMDB0 and SEESCM_ARCH ====
 +
 +  * **-** SQL Skript fertig machen (momentan liegt er auf dem Desktop -> scm_arch.sql)
 +    * fertig schreiben 
 +      * **+** virtuelle Spalten durch normale ersetzen, wenn notwendig (sie sollten normalerweise aber schon alle vorhanden sein)
 +      * **-** Burkhard fragen was mit der TAIRMYWSUPDATEQUEUE ist. Sie sollte eigentlich ins AEE ausgelagert sein, existiert aber immer noch 
 +    * **+** Speziell meine Commits prüfen
 +      * **+** 11-er
 +      * **+** 10-er 
 +    * **-** in die 11-er Version von der airscm_arch Schema reinstellen
 +  * **+** In den Tracker ein Feature Request eintragen: DDL feststellen und Benutzer warnen
 +    * https://cust-projects.seeburger.de/redmine/projects/eclipsesqlplugin
 +
 +
 +===== Freitag 29.09.2017 =====
 +
 +
 +==== Avril ====
 +  * **-** ACRA in die App einbauen
 +    * **+** Einbauen
 +    * **-** Releasen
 +    * **-** Versenden 
 +  * **+** Versuchen Absturz zu provozieren -> kein Erfolg
 +  * **-** Knopf im Ordner: "Alle löschen"
 +  * **-** Eine TODO Liste im Projekt "Avril" schreiben und mit Prioritäten versehen
 +
 + - В поле Time (скрин 1, обозначено 3) передавать сразу время поступления тревоги в WSC, что бы патрулю не надо было спрашивать у оператора время тревоги и меньше тратить время на заполнение
 + 
 + & 3. Кнопку Resolv, если можно переименовать в Akt
 + 
 + - Bug: if all jobs are completed (on the tablet), then the last job is still visible on the right side. The list view is empty, but the details view - not. 
 +
 + - Bug: if all jobs are completed (by admin from web UI), then tablet receives a notification, which can be cancelled, but it is impossible to stop the sound. 
 +
 +
 +10. Добавить возможность патрулю отменить заполнение акта. Т.е. грубо говоря рядом с кнопкой Resolv должна быть кнопка Cancel, при нажатии на которую приложение спросит (лучше 2 раза) что точно он хочет отменить этот таск или нет. При отмене в админке должен этот таск маркироваться как отмененный пользователем.
 + 
 +По админке
 + 
 +1. Будет использовать анкету questionnaireId = 2, ее желательно переименовать в Häireakt
 + 
 +2. При выводе на печать предлагаю сделать два вариант. Первый вариант такой как сейчас, а второй вариант показывать только уже готовый шаблон заполненного акта. Не имеет смысла проматывать все скролбаром вниз что бы добраться до шаблона.
 + 
 +3. Добавить возможность выбора нескольких тасков и удаление их разом.
 + 
 +По шаблону акта
 + 
 +1. Между словом HÄIREAKT и номером акта добавить пробел (скрин 2)
 +2. Häire põhjustas anduri rakendumine tsoonis номер зоны, mille kutsus esile:  заменить на Häire põhjustas anduri rakendumine tsoonis: номер зоны из заполненной анкеты (скрин 2)
 +
 +
 +==== Wialon für Rolf ====
 +  * **+** Testaccount für Rolf erstellen
 +    * **+** 2 Demofahrzeuge
 +    * **+** 1 T4T Fahrzeug
 +    * **+** Zugangsdaten schicken
 +
 +==== Bauer Gear Motor ====
 +  * **-** TI LaunchPad testen
 +    * **-** Mit einem Testprogramm (von einem anderen Hersteller, evtl. von TI)
 +      * **-** Verbindung herstellen
 +      * **-** Services entdecken
 +      * **-** Knopfdrücke abfangen
 +  * **-** Datenquelle (Testprogramm) finden, welches BLE 4.0 simuliert  
 +
 +==== Contract Experts ====
 +  * **-** Zeitnachweis einscannen
 +  * **-** Rechnung schreiben und abschicken
 +
 +==== Palletways Schnittstelle ====
 +  * **-** Ulric anrufen und fragen, ob ich weitermachen soll
 +  * **-** Datenbankschnittstelle realisieren
 +    * **-** Spezifikation erstellen: wie ein bestimmter Status in der Tabelle gemeldet wird
 +      * **-** Aufbau der tbStatusVerlauf beschreiben
 +    * **-** Log in die Tabelle schreiben
 +
 +===== Samstag 30.09.2017 =====
 +
 +==== Avril ====
 +  * **+** ACRA in die App einbauen
 +    * **+** Releasen
 +    * **+** Versenden 
 +  * **-** Knopf im Ordner: "Alle löschen"
 +  * **-** Eine TODO Liste im Projekt "Avril" schreiben und mit Prioritäten versehen
 +
 + - В поле Time (скрин 1, обозначено 3) передавать сразу время поступления тревоги в WSC, что бы патрулю не надо было спрашивать у оператора время тревоги и меньше тратить время на заполнение
 + 
 + & 3. Кнопку Resolv, если можно переименовать в Akt
 + 
 + - Bug: if all jobs are completed (on the tablet), then the last job is still visible on the right side. The list view is empty, but the details view - not. 
 +
 + - Bug: if all jobs are completed (by admin from web UI), then tablet receives a notification, which can be cancelled, but it is impossible to stop the sound. 
 +
 +
 +10. Добавить возможность патрулю отменить заполнение акта. Т.е. грубо говоря рядом с кнопкой Resolv должна быть кнопка Cancel, при нажатии на которую приложение спросит (лучше 2 раза) что точно он хочет отменить этот таск или нет. При отмене в админке должен этот таск маркироваться как отмененный пользователем.
 + 
 +По админке
 + 
 +1. Будет использовать анкету questionnaireId = 2, ее желательно переименовать в Häireakt
 + 
 +2. При выводе на печать предлагаю сделать два вариант. Первый вариант такой как сейчас, а второй вариант показывать только уже готовый шаблон заполненного акта. Не имеет смысла проматывать все скролбаром вниз что бы добраться до шаблона.
 + 
 +3. Добавить возможность выбора нескольких тасков и удаление их разом.
 + 
 +По шаблону акта
 + 
 +1. Между словом HÄIREAKT и номером акта добавить пробел (скрин 2)
 +2. Häire põhjustas anduri rakendumine tsoonis номер зоны, mille kutsus esile:  заменить на Häire põhjustas anduri rakendumine tsoonis: номер зоны из заполненной анкеты (скрин 2)
 +
 +==== Contract Experts ====
 +  * **+** Zeitnachweis einscannen
 +  * **+** Rechnung schreiben
 +
 +==== Bauer Gear Motor ====
 +  * **-** TI LaunchPad testen
 +    * **-** Mit einem Testprogramm (von einem anderen Hersteller, evtl. von TI)
 +      * **-** Verbindung herstellen
 +      * **-** Services entdecken
 +      * **-** Knopfdrücke abfangen
 +  * **-** Datenquelle (Testprogramm) finden, welches BLE 4.0 simuliert  
 +
 +
 +==== Palletways Schnittstelle ====
 +  * **-** Ulric anrufen und fragen, ob ich weitermachen soll
 +  * **-** Datenbankschnittstelle realisieren
 +    * **-** Spezifikation erstellen: wie ein bestimmter Status in der Tabelle gemeldet wird
 +      * **-** Aufbau der tbStatusVerlauf beschreiben
 +    * **-** Log in die Tabelle schreiben