' CheckMacroArticlesComplete() ' ---------------------------------------------------------------------------- ' Prüft, ob die im Auftrag enthaltenen Macro-Artikel ' vollständig sind, und vermerkt die Infos im ' MACRO_ARTICLE_LIST-Array ' ' Returns: - ' ---------------------------------------------------------------------------- ' 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: 08.03.2021 / MP ' Version Date / Editor: 08.03.2021 / MP ' Version Number: 3.0.0.0 Sub CheckMacroArticlesComplete() Set mywin = CWLStart.CurrentModule.Windows.Item(WINDOW_ID) Set Grid = mywin.Controls.Item(GRID_ID).Grid For GridIndex = 1 To Grid.LineCount: Do MacroFlag = Cint(Grid.GetCellValue(GridIndex, COLUMN_MACRO_FLAG)) If MacroFlag = 1 Then LineNumber = Cint(Grid.GetCellValue(GridIndex, COLUMN_LINE_NUMBER)) MacroArticleListIndex = -1 For MacroArrayIndex = 0 To UBound(MACRO_ARTICLE_LIST) If MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_LINE_NUMBER, MacroArrayIndex) = LineNumber Then MacroArticleListIndex = MacroArrayIndex Exit For End If Next For InnerGridIndex = GridIndex + 1 To Grid.LineCount: Do InnerMacroFlag = Cint(Grid.GetCellValue(InnerGridIndex, COLUMN_MACRO_FLAG)) If InnerMacroFlag = 2 Then AmountTotal = Cint(Grid.GetCellValue(InnerGridIndex, COLUMN_TOTAL)) AmountScanned = Cint(Grid.GetCellValue(InnerGridIndex, COLUMN_SCANNED)) If AmountTotal <> AmountScanned Then MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_GRID_LINE_INDEX, MacroArticleListIndex) = GridIndex MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_COMPLETE, MacroArticleListIndex) = False ' An der Stelle des unvollständigen Artikels weiter prüfen GridIndex = InnerGridIndex ' Aus Makroartikel aussteigen, weil unvollständig Exit For End If Else MACRO_ARTICLE_LIST(COLUMN_MACRO_ARTICLE_GRID_LINE_INDEX, MacroArticleListIndex) = GridIndex ' An der Stelle des unvollständigen Artikels weiter prüfen GridIndex = InnerGridIndex ' Aus Makroartikel aussteigen, weil vollständig Exit For End If Loop While False: Next Else ' Nächsten Artikel bearbeiten Exit Do End If Loop While False: Next End Sub