User Tools

Site Tools


12.10.2017_donnerstag

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
12.10.2017_donnerstag [2017/10/12 11:43] – [Telefonieren mit Burkhard] kalaschnikow12.10.2017_donnerstag [2018/04/23 15:57] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== 12.10.2017 Mittwoch ====== 
 +
 +===== rm#21018 !AIRS_PRD: DA remains in Status "Partially received", although all connected PO´s Status "Received" =====
 +
 +https://cust-projects.seeburger.de/redmine/issues/21018
 +
 +==== TODO ====
 +  * **+** Commit
 +
 +===== rm#20874 CONCESSION - System error (S/N exceeding 4.000 characters) =====
 +
 +https://cust-projects.seeburger.de/redmine/issues/20874
 +
 +  * **+** SQL erstellen
 +    * ''SUM(Quantity) OVER (PARTITION BY AccountID ORDER BY ID)'' würde wahrscheinlich tun ([[https://brainfizzle.wordpress.com/2014/09/15/oracle-listagg-ora-01489-result-of-string-concatenation-is-too-long/|Link]])
 +<code sql>
 +SELECT
 +   CNCRHEADERID,
 +   CSNOPOSNR,
 +   cSERIALNO,
 +   SUM( LENGTH(cSERIALNO) + 1 ) OVER ( partition by CNCRHEADERID ORDER BY CSNOPOSNR ASC ) cTotalLen
 +FROM TAIRNCR_SERIALNO
 +</code>
 +
 +Mein jetziges SQL:
 +<code sql>
 +SELECT tAirPartnerRelation.*, tAirOrderingOfficer.*, TAIRMATERIAL.*, TAIRNCRHEADER.*, serial.* 
 +FROM TAIRNCRHEADER  
 +INNER JOIN tAirPartnerRelation ON TAIRNCRHEADER.CREFRELATIONID = tAirPartnerRelation.CRELATIONID 
 +INNER JOIN tAirOrderingOfficer ON TAIRNCRHEADER.CREFOFFICERID = tAirOrderingOfficer.CORDERINGOFFICERID 
 +INNER JOIN TAIRMATERIAL        ON TAIRNCRHEADER.CREFMATID = TAIRMATERIAL.CMATERIALID  
 +  LEFT JOIN (SELECT CNCRHEADERID serialHeaderId, CSERIALNO CSERIALNUM FROM (SELECT CNCRHEADERID, CASE WHEN CNT <= 100 THEN cSERIALNO ELSE (CASE WHEN CSERIALNO IS NOT NULL THEN CSERIALNO||'...' ELSE CSERIALNO END) END cSerialNo FROM 
 +  (SELECT COUNT(*) as cnt, CNCRHEADERID, LISTAGG(CASE WHEN ROWNUM <= 100 THEN CSERIALNO END, ';') within group (order by CSNOPOSNR) AS CSERIALNO FROM TAIRNCR_SERIALNO group by CNCRHEADERID)))
 +serial on TAIRNCRHEADER.CNCRHEADERID=serial.serialHeaderId  
 +WHERE 1 = 1  AND ROWNUM <= 5000  AND (cCustomerPortalGroup IN (1))  AND (cSupplierCPId IN (-1000002,10006106,10006107))  AND cSupplierCGId = 100027 AND CISUNREGSUPPLIER = 0 AND CNCRHEADERID = 1604
 +</code>
 +
 +Problem ist, dass die folgende Abfrage für RowNums > 100 falsche Werte liefert:
 +<code sql>
 +SELECT COUNT(*) as cnt, CNCRHEADERID, LISTAGG(CASE WHEN ROWNUM <= 100 THEN CSERIALNO END, ';') within group (order by CSNOPOSNR) AS CSERIALNO FROM TAIRNCR_SERIALNO group by CNCRHEADERID
 +</code>
 +
 +=== Lösung ===
 +<code sql>
 +SELECT 
 +CNCRHEADERID,
 +MAX (cTotalLen) AS cTotalLenMax,
 +CASE  WHEN MAX(cTotalLen) > 4000 THEN listAgg(cSERIALNO,',') within group (order by CSNOPOSNR)||'...' ELSE listAgg(cSERIALNO,',') within group (order by CSNOPOSNR) END as cSerialNoAgg
 +FROM 
 +(
 + select 
 +    cNCRHEADERID, 
 +    cSNOPOSNR,
 +    CASE WHEN cTotalLen > 3997 THEN SUBSTR(cSERIALNO, 1, LENGTH(cSerialNo) - (cTotalLen - 3997)) ELSE cSerialNo END AS cSerialNo,
 +    cTotalLen
 + from
 + (
 + SELECT
 +     CNCRHEADERID,
 +     CSNOPOSNR,
 +     cSERIALNO,
 +     SUM( LENGTH(cSERIALNO) + 1 ) OVER ( partition by CNCRHEADERID ORDER BY CSNOPOSNR ASC ) cTotalLen
 + FROM TAIRNCR_SERIALNO
 + )
 +) group by cNCRHEADERID
 +</code>
 +
 +
 +=== Notes ===
 +  * Folgende Fälle speziell prüfen:
 +    * KEINE serielle Nummern
 +    * 1 serielle Nummer
 +    * Mehrere serielle Nummern, deren Gesamtlänge über 3997 Zeichen liegt
 +    * Mehrere serielle Nummern, deren Gesamtlänge unter 3997 Zeichen liegt
 +===== rm#22382 CR 22025: Concession - Integration of "Spot-It" application (Airbus Proof of Concept) =====
 +
 +https://cust-projects.seeburger.de/redmine/issues/22382
 +
 +  * **-** Implementieren
 +    * **-** Meinen Stash anwenden
 +    * **-** Testen  
 +    * **-** Commiten
 +  * **-** Harazim im Redmine antworten
 +
 +
 +===== rm#21582 EDI Scheduler does not remove cascade ID in parallel scenarios =====
 +
 +https://cust-projects.seeburger.de/redmine/issues/21582
 +
 +Das Ticket steht momentan auf "ON HOLD" (inoffiziell). Ich konnte es leider nicht nachvollziehen, der Burkhard hat aber keine Zeit, um mit mir das noch ein Mal durchzuspielen. **Upd.**: Er hat es alleine versucht und es hat auch nicht geklappt.
 +
 +Notizen siehe [[http://vwiki.wialon-consulting.de/doku.php?id=09.10.2017_montag#rm_21582_edi_scheduler_does_not_remove_cascade_id_in_parallel_scenarios|09.10.2017]]. 
 +
 +
 +
 +===== Abend =====
 +----
 +
 +
 +==== Steuervoranmeldung ====
 +  * **-** Rechnungen abschicken
 +
 +==== DiBa Konto prüfen ====
 +  * **-** Gucken wie die Überweisung möglich ist
 +
 +==== Wiatrack ====
 +  * **-** Log von gestern und heute anschauen (sind Lücken vorhanden?)
 +
 +==== Bauer Gear Motor ====
 +  * **-** mit der eigenen App versuchen sich mit dem Board zu verbinden und Tastendrücke abzufangen