' TransferGridData() ' ---------------------------------------------------------------------------- ' Überführt die Gescannten Daten aus dem Grid in die Datenstruktur ' ' Returns: TransferGridData: Boolean ' ---------------------------------------------------------------------------- ' Copyright (c) 2021 by Digital Data GmbH ' ' Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim ' Tel.: 0641/202360 • E-Mail: info-flow(at)digitaldata.works ' ---------------------------------------------------------------------------- ' Creation Date / Author: 01.09.2021 / JJ ' Version Date / Editor: 25.03.2021 / MP ' Version Number: 4.0.0.0 Function TransferGridData() Set mywin = CWLStart.CurrentModule.Windows.Item(WINDOW_ID) Set Grid = mywin.Controls.Item(GRID_ID).Grid For GridIndex = 1 To Grid.LineCount: Do Total = Cint(Grid.GetCellValue(GridIndex, COLUMN_TOTAL)) Scanned = Cint(Grid.GetCellValue(GridIndex, COLUMN_SCANNED)) ChargeFlag = Cint(Grid.GetCellValue(GridIndex, COLUMN_CHARGE_FLAG)) ' Checkbox-Werte = 0 oder 1 ' Zeilennummer aus Auftrag LineNumber = Cint(Grid.GetCellValue(GridIndex, COLUMN_LINE_NUMBER)) SerialNumber = Grid.GetCellValue(GridIndex, COLUMN_SERIALNUMBER) MacroFlag = Grid.GetCellValue(GridIndex, COLUMN_MACRO_FLAG) If Scanned = 0 Then Exit Do End If For OrderArrayIndex = 0 To Ubound(ORDER_ARTICLE_DATA, 2) If ORDER_ARTICLE_DATA(INDEX_IS_VISIBLE, OrderArrayIndex) = True Then If ORDER_ARTICLE_DATA(INDEX_LINE_NUMBER, OrderArrayIndex) = LineNumber Then ArraySerialNumber = ORDER_ARTICLE_DATA(INDEX_SERIAL_NUMBER, OrderArrayIndex) If MacroFlag = 1 Then For MacroArrayIndex = 0 To UBound(MACRO_ARTICLE_LIST) If (MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_LINE_NUMBER, MacroArrayIndex) = LineNumber) Then If (MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_COMPLETE, MacroArrayIndex) = True) Then ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex) = MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_AMOUNT_REMAINING, MacroArrayIndex) Else ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex) = MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_AMOUNT_COMPLETED, MacroArrayIndex) End If Exit For End If Next ElseIf ChargeFlag = 1 And (Len(ArraySerialNumber) = 0 Or ArraySerialNumber = SerialNumber) Then ' Wenn in der Zeile noch keine Seriennummer existiert ODER ' Wenn in der Zeile schon die selbe Seriennummer existiert ORDER_ARTICLE_DATA(INDEX_SERIAL_NUMBER, OrderArrayIndex) = SerialNumber ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex) = Scanned Exit For ElseIf ChargeFlag = 0 Then ORDER_ARTICLE_DATA(INDEX_AMOUNT_SCANNED, OrderArrayIndex) = Scanned Exit For End If End If End If Next Loop While False: Next TransferGridData = True End Function