====== AIRS-593 PO attachment ====== https://doc.supplyon.de/display/S10058/PO+attachment Epic: https://tasks.supplyon.de/browse/AIRS-593 ===== TODO ===== * **+** Implement backend logic for PO <-> Attachment assignment * **+** Create new DB table for PO <-> Attachment assignment (see [[https://tasks.supplyon.de/browse/AIRS-633|AIRS-633]]) * **+** Implement updating of file attachment * **+** Implement deletion of file attachment -> Done by Stefan Roeck * **+** Implement import (Abgucken kann man von ''NCRResponseXMLHandler'') * Wichtige Stelle für Import einer Schedule Line: ''POImportXMLHandler.processPositionsElement()'' * **-** PO attachments Non-Collab-Change alert handling (see [[https://tasks.supplyon.de/browse/AIRS-639|AIRS-639]]) ===== PO attachments Non-Collab-Change alert handling ===== [[AIRS-639 PO attachments Non-Collab-Change alert handling]]\\ [[https://tasks.supplyon.de/browse/AIRS-639|AIRS-639]] ===== Misc ===== ==== Result of meeting on 17.07.2018 ==== * Schlüssel für Attachment soll die HeaderId und PosNum sein. * Die Attachments sollen sich anhand vom Dateinamen ersetzen. D.h. wenn für die gleiche HeaderId und PosNum ein Attachment mit dem gleichen Dateinamen existiert, soll es mit dem neueren ersetzt werden. * Total size of Attachment wird so interpretiert, dass es innerhalb von einem Import gilt. D.h. es soll geguckt werden, ob die Attachments in dem aktuellen Import eine bestimmte Größe nicht übersteigen. ==== SQLs ==== -- get data from 'references' table SELECT * FROM TAIRPOATTACHMENTS ORDER BY CREFPOHEADERID, CREFPOSNUM ASC; -- get all attachments (from FAT schema!) SELECT * FROM tFATAttachmentMeta order by CATTACHMENTID desc;