' SetDuplicateChecker_TableContent ' ---------------------------------------------------------------------------- ' Diese Subroutine füllt eine Tabelle (Grid) mit Daten ' Parameter 1 (LEVEL) = Das aktuelle Showlevel übergeben. ' Parameter 2 (GRID) = Falls mehrere Grids auf einem Level vorkommen, kann über diesen Parameter nochmals unterscheiden werden. ' ' ---------------------------------------------------------------------------- ' Copyright (c) 2021 by Digital Data GmbH ' ' Digital Data GmbH • Ludwig-Rinn-Strasse 16 • D-35452 Heuchelheim ' Tel.: 0641/202360 • E-Mail: info-flow@digitaldata.works ' ---------------------------------------------------------------------------- ' Creation Date / Author: 01.11.2021 / MK ' Version Date / Editor: 01.11.2021 / MK ' Version Number: 1.0.0.0 Sub SetDuplicateChecker_TableContent(LEVEL,GRID) If (LEVEL = 1) or (LEVEL = "1") Then If (GRID = LEVEL1_GRID1_ID) Then IF (LEVEL1_CMB_ProductComparisonField.contents <> Empty) and (LEVEL1_CMB_ProductComparisonField.contents <> "") and (LEVEL1_CMB_ProductComparisonField.contents <> " ") Then LEVEL1_Grid1.Clear LEVEL1_Grid1.InitUserGrid LEVEL1_Grid1.Header LEVEL1_Grid1.Refresh SQLQuery_ProductComparison = SQLQuery_ProductComparison_Template SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%Field/Attribute%",LEVEL1_CMB_ProductComparisonField.contents) 'If Checkbox is - checked - get all Product types IF (LEN(LEVEL1_CHK_ProductIdentAndCharge.screencontents) > 0) then IF (LEVEL1_CHK_ProductIdentAndCharge.screencontents = 1) Then SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%TypeConstraint1%","0,1,2") SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%TypeConstraint2%","0,1,2,4") Else SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%TypeConstraint1%","0") SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%TypeConstraint2%","2") End if Else SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%TypeConstraint1%","0") SQLQuery_ProductComparison = Replace(SQLQuery_ProductComparison,"%TypeConstraint2%","2") End if 'Remove linebreaks (final) SQLQuery_ProductComparison=Replace(SQLQuery_ProductComparison,vbCr,"") SQLQuery_ProductComparison=Replace(SQLQuery_ProductComparison,vbLf,"") 'Start query for left grid Set SQLResult_ProductComparison = Conn.Select(SQLQuery_ProductComparison) If (SQLResult_ProductComparison.RowCount) > 0 Then LEVEL1_Grid1.IsRedraw = False LEVEL1_GRID1_GUID = 0 LoopCounter = 0 'Fill left Frame / Table If (SQLResult_ProductComparison.RowCount > 0) Then Do LEVEL1_GRID1_GUID = LEVEL1_GRID1_GUID+1 CWLCurrentWindow.ActiveWindow.Vars.Value(495,11) = clng(LEVEL1_GRID1_GUID) CWLCurrentWindow.ActiveWindow.Vars.Value(495,12) = clng(SQLResult_ProductComparison.value(0)) CWLCurrentWindow.ActiveWindow.Vars.Value(495,13) = General.Convert(cstr(SQLResult_ProductComparison.value(1)),2) 'Always convert because of "Notizfelder 1 - 10" 'This construct was bulid to even compare rtf fields 'Preserve in redim is important to save old data LoopCounter = LoopCounter + 1 ReDim Preserve ProductComparison(ubound(ProductComparison)+1) ProductComparison(LoopCounter) = SQLResult_ProductComparison.value(1) 'Replace inverted comma and line breaks ProductComparison(LoopCounter) = Replace(ProductComparison(LoopCounter),"'","") ProductComparison(LoopCounter) = Replace(ProductComparison(LoopCounter),vbCr,"") ProductComparison(LoopCounter) = Replace(ProductComparison(LoopCounter),vbLf,"") If (DEBUG_ON = True) Or (DebugMode = "Enabled") Then msgbox ProductComparison(LoopCounter),vbInformation, DEBUG_TITLE & " - LoopCounter: " & LoopCounter End if LEVEL1_Grid1.AddLine() 'Trick it, because rowcount wont work If (SQLResult_ProductComparison.NextRecord = False) Then Exit Do End If Loop End If 'Show count down below the table IF (LEVEL1_Grid1.LineCount = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,10) = (Cstr(LEVEL1_Grid1.LineCount) & " Duplikatsgruppe gefunden") Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,10) = (Cstr(LEVEL1_Grid1.LineCount) & " Duplikatsgruppen gefunden") End if LEVEL1_GRID1.SetFooterColumn LEVEL1_GRID1_COLUMN_FIELD_OR_ATTRIBUTE,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,10,true LEVEL1_GRID1.Footer LEVEL1_Grid1.IsRedraw = True 'Set focus for the fist call, so ribbon buttons will work well (eg. NEW) MacroCommands.MSetFieldFocus MAIN_WINDOW_ID,LEVEL1_GRID1_ID Else LEVEL1_Grid1.IsRedraw = False LEVEL1_Grid1.Clear LEVEL1_Grid1.InitUserGrid LEVEL1_Grid1.Header CWLCurrentWindow.ActiveWindow.Vars.Value(495,10) = "Keine Duplikate gefunden" LEVEL1_GRID1.SetFooterColumn LEVEL1_GRID1_COLUMN_FIELD_OR_ATTRIBUTE,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,10,true LEVEL1_GRID1.Footer LEVEL1_Grid1.IsRedraw = True End If Else LEVEL1_Grid1.IsRedraw = False LEVEL1_Grid1.Clear LEVEL1_Grid1.InitUserGrid LEVEL1_Grid1.Header CWLCurrentWindow.ActiveWindow.Vars.Value(495,10) = "Keine Duplikate gefunden" LEVEL1_GRID1.SetFooterColumn LEVEL1_GRID1_COLUMN_FIELD_OR_ATTRIBUTE,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,10,true LEVEL1_GRID1.Footer LEVEL1_Grid1.IsRedraw = True End If '------------------------------------------------------------------------------------------------------------------------------------------------------------------ ElseIf (GRID = LEVEL1_GRID2_ID) Then LEVEL1_Grid2.Clear LEVEL1_Grid2.InitUserGrid LEVEL1_Grid2.Header LEVEL1_Grid2.Refresh SQLQuery_ProductInfo = SQLQuery_ProductInfo_Template SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%Field/Attribute%",LEVEL1_CMB_ProductComparisonField.contents) SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%Fieldvalue/Attributevalue%",ProductComparison(LEVEL1_GRID1_CURRENT_GUID)) If (DEBUG_ON = True) Or (DebugMode = "Enabled") Then MsgBox ProductComparison(LEVEL1_GRID1_CURRENT_GUID),vbInformation,DEBUG_TITLE & " - ROW: " & LEVEL1_GRID1_CURRENT_GUID End if 'If Checkbox is - checked - get all Product types IF (LEN(LEVEL1_CHK_ProductIdentAndCharge.screencontents) > 0) then IF (LEVEL1_CHK_ProductIdentAndCharge.screencontents = 1) Then SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%TypeConstraint1%","0,1,2") SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%TypeConstraint2%","0,1,2,4") Else SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%TypeConstraint1%","0") SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%TypeConstraint2%","2") End if Else SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%TypeConstraint1%","0") SQLQuery_ProductInfo = Replace(SQLQuery_ProductInfo,"%TypeConstraint2%","2") End if SQLQuery_ProductInfo=Replace(SQLQuery_ProductInfo,vbCr,"") SQLQuery_ProductInfo=Replace(SQLQuery_ProductInfo,vbLf,"") If (DEBUG_ON = True) Or (DebugMode = "Enabled") Then MsgBox SQLQuery_ProductInfo,vbInformation,DEBUG_TITLE & " - " & SQLQuery_ProductInfo End if 'Start query for right grid Set SQLResult_ProductInfo = Conn.Select(SQLQuery_ProductInfo) If (SQLResult_ProductInfo.RowCount) > 0 Then LEVEL1_Grid2.IsRedraw = False 'Fill left Frame / Table If (SQLResult_ProductInfo.RowCount > 0) Then Do 'Inactive / Active flag If (LEN(SQLResult_ProductInfo.value(45)) > 0) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,21) = 0 Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,21) = 1 End if '-------------------------------------------------------- ChargeIdentflag = (SQLResult_ProductInfo.value(42)) 'Charge-/Identflag c025 in v021 ShapeTypeFlag = (SQLResult_ProductInfo.value(39)) 'Ausprägungsflag c014 in v021 'Determ type of product. Ident, main, charge or shape of it ''Haupartikel mit Ausprägung (mit Chargennummern) If (ChargeIdentflag = 0) and (ShapeTypeFlag = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 1 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 1 'Chargenartikelflag ''Ausprägung mit Chargennummer ElseIf (ChargeIdentflag = 0) and (ShapeTypeFlag = 2) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 0 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 1 'Chargenartikelflag ''Haupartikel mit Ausprägung (mit Identnummer) ElseIf (ChargeIdentflag = 1) and (ShapeTypeFlag = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 1 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 1 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''Ausprägung mit Identnummer ElseIf (ChargeIdentflag = 1) and (ShapeTypeFlag = 2) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 0 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 1 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''Haupartikel ohne Ausprägung ElseIf (ChargeIdentflag = 2) and (ShapeTypeFlag = 0) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 1 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 0 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''Haupartikel mit Ausprägung (ohne Chargenverwaltung) ElseIf (ChargeIdentflag = 2) and (ShapeTypeFlag = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 1 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''Ausprägung (ohne Chargenverwaltung) ElseIf (ChargeIdentflag = 2) and (ShapeTypeFlag = 2) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 0 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''unknown / not used! ElseIf (ChargeIdentflag = 3) Then ''Haupartikel mit Ausprägung (mit FIFO) ElseIf (ChargeIdentflag = 4) and (ShapeTypeFlag = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 1 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''Ausprägung (mit FIFO) ElseIf (ChargeIdentflag = 4) and (ShapeTypeFlag = 2) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 0 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 1 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag ''Should not happen... Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,22) = 0 'Hauptartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,23) = 0 'Ausprägungsartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,24) = 0 'Identartikelflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,25) = 0 'Chargenartikelflag End if '-------------------------------------------------------- CWLCurrentWindow.ActiveWindow.Vars.Value(495,26) = (cstr(SQLResult_ProductInfo.value(38))) 'Hauptartikelnummer CWLCurrentWindow.ActiveWindow.Vars.Value(495,27) = (cstr(SQLResult_ProductInfo.value(36))) 'Artikelnummer CWLCurrentWindow.ActiveWindow.Vars.Value(495,28) = (cstr(SQLResult_ProductInfo.value(37))) 'Artikelbezeichnung LEVEL1_Grid2.AddLine() 'Trick it, because rowcount wont work If (SQLResult_ProductInfo.NextRecord = False) Then Exit Do End If Loop End If 'Show count down below the table IF (LEVEL1_Grid2.LineCount = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,20) = (Cstr(LEVEL1_Grid2.LineCount) & " Artikel wird angezeigt") Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,20) = (Cstr(LEVEL1_Grid2.LineCount) & " Artikel werden angezeigt") End if LEVEL1_Grid2.SetFooterColumn LEVEL1_GRID2_COLUMN_PRODUCT_DESCRIPTION,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,20,true LEVEL1_Grid2.Footer LEVEL1_Grid2.IsRedraw = True 'Set DrilDown to Line 0, to set it for the column '50 = Personenkonten, 21 = Artikel LEVEL1_Grid2.SetDrillDown 0, LEVEL1_GRID2_COLUMN_MAIN_PRODUCT_NUMBER, 21 LEVEL1_Grid2.SetDrillDown 0, LEVEL1_GRID2_COLUMN_PRODUCT_NUMBER, 21 Else LEVEL1_Grid2.IsRedraw = False LEVEL1_Grid2.Clear LEVEL1_Grid2.InitUserGrid LEVEL1_Grid2.Header CWLCurrentWindow.ActiveWindow.Vars.Value(495,20) = "Keine Artikel gefunden" LEVEL1_Grid2.SetFooterColumn LEVEL1_GRID2_COLUMN_PRODUCT_DESCRIPTION,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,20,true LEVEL1_Grid2.Footer LEVEL1_Grid2.IsRedraw = True End If End If '------------------------------------------------------------------------------------------------------------------------------------------------------------------ ElseIf (LEVEL = 2) or (LEVEL = "2") Then If (GRID = LEVEL2_Grid1_ID) Then IF (LEVEL2_CMB_AccountComparisonField.contents <> Empty) and (LEVEL2_CMB_AccountComparisonField.contents <> "") and (LEVEL2_CMB_AccountComparisonField.contents <> " ") Then LEVEL2_Grid1.Clear LEVEL2_Grid1.InitUserGrid LEVEL2_Grid1.Header LEVEL2_Grid1.Refresh SQLQuery_AccountComparison = SQLQuery_AccountComparison_Template SQLQuery_AccountComparison = Replace(SQLQuery_AccountComparison,"%Field/Attribute%",LEVEL2_CMB_AccountComparisonField.contents) 'If Checkbox is - checked - get all Product types IF (LEN(LEVEL2_CHK_AccountNotOnlyCustomers.ScreenContents) > 0) then IF (LEVEL2_CHK_AccountNotOnlyCustomers.ScreenContents = 1) Then SQLQuery_AccountComparison = Replace(SQLQuery_AccountComparison,"%TypeConstraint%","2,3,4,5") Else SQLQuery_AccountComparison = Replace(SQLQuery_AccountComparison,"%TypeConstraint%","2") End if Else SQLQuery_AccountComparison = Replace(SQLQuery_AccountComparison,"%TypeConstraint%","2") End if 'Remove linebreaks SQLResult_AccountComparison=Replace(SQLResult_AccountComparison,vbCr,"") SQLResult_AccountComparison=Replace(SQLResult_AccountComparison,vbLf,"") 'Start query for left grid Set SQLResult_AccountComparison = Conn.Select(SQLQuery_AccountComparison) If (SQLResult_AccountComparison.RowCount) > 0 Then LEVEL2_Grid1.IsRedraw = False LEVEL2_GRID1_GUID = 0 LoopCounter = 0 'Fill left Frame / Table If (SQLResult_AccountComparison.RowCount > 0) Then Do LEVEL2_GRID1_GUID = LEVEL2_GRID1_GUID+1 CWLCurrentWindow.ActiveWindow.Vars.Value(495,41) = clng(LEVEL2_GRID1_GUID) CWLCurrentWindow.ActiveWindow.Vars.Value(495,42) = clng(SQLResult_AccountComparison.value(0)) CWLCurrentWindow.ActiveWindow.Vars.Value(495,43) = General.Convert(cstr(SQLResult_AccountComparison.value(1)),2) 'This construct was bulid to even compare rtf fields 'Preserve in redim is important to save old data LoopCounter = LoopCounter + 1 ReDim Preserve AccountComparison(ubound(AccountComparison)+1) AccountComparison(LoopCounter) = SQLResult_AccountComparison.value(1) 'Replace inverted comma and line breaks AccountComparison(LoopCounter) = Replace(AccountComparison(LoopCounter),"'","") AccountComparison(LoopCounter) = Replace(AccountComparison(LoopCounter),vbCr,"") AccountComparison(LoopCounter) = Replace(AccountComparison(LoopCounter),vbLf,"") If (DEBUG_ON = True) Or (DebugMode = "Enabled") Then msgbox AccountComparison(LoopCounter),vbInformation, DEBUG_TITLE & " - LoopCounter: " & LoopCounter End if LEVEL2_Grid1.AddLine() 'Trick it, because rowcount wont work If (SQLResult_AccountComparison.NextRecord = False) Then Exit Do End If Loop End If 'Show count down below the table IF (LEVEL2_Grid1.LineCount = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,40) = (Cstr(LEVEL2_Grid1.LineCount) & " Duplikatsgruppe gefunden") Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,40) = (Cstr(LEVEL2_Grid1.LineCount) & " Duplikatsgruppen gefunden") End if LEVEL2_GRID1.SetFooterColumn LEVEL2_GRID1_COLUMN_FIELD_OR_ATTRIBUTE,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,40,true LEVEL2_GRID1.Footer LEVEL2_Grid1.IsRedraw = True 'Set focus for the fist call, so ribbon buttons will work well (eg. NEW) MacroCommands.MSetFieldFocus MAIN_WINDOW_ID,LEVEL2_Grid1_ID Else LEVEL2_Grid1.IsRedraw = False LEVEL2_Grid1.Clear LEVEL2_Grid1.InitUserGrid LEVEL2_Grid1.Header CWLCurrentWindow.ActiveWindow.Vars.Value(495,40) = "Keine Duplikate gefunden" LEVEL2_GRID1.SetFooterColumn LEVEL2_GRID1_COLUMN_FIELD_OR_ATTRIBUTE,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,40,true LEVEL2_GRID1.Footer LEVEL2_Grid1.IsRedraw = True End if Else LEVEL2_Grid1.IsRedraw = False LEVEL2_Grid1.Clear LEVEL2_Grid1.InitUserGrid LEVEL2_Grid1.Header CWLCurrentWindow.ActiveWindow.Vars.Value(495,40) = "Keine Duplikate gefunden" LEVEL2_GRID1.SetFooterColumn LEVEL2_GRID1_COLUMN_FIELD_OR_ATTRIBUTE,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,40,true LEVEL2_GRID1.Footer LEVEL2_Grid1.IsRedraw = True End If '------------------------------------------------------------------------------------------------------------------------------------------------------------------ ElseIf (GRID = LEVEL2_Grid2_ID) Then LEVEL2_Grid2.Clear LEVEL2_Grid2.InitUserGrid LEVEL2_Grid2.Header LEVEL2_Grid2.Refresh SQLQuery_AccountInfo = SQLQuery_AccountInfo_Template SQLQuery_AccountInfo = Replace(SQLQuery_AccountInfo,"%Field/Attribute%",LEVEL2_CMB_AccountComparisonField.contents) SQLQuery_AccountInfo = Replace(SQLQuery_AccountInfo,"%Fieldvalue/Attributevalue%",AccountComparison(LEVEL2_GRID1_CURRENT_GUID)) If (DEBUG_ON = True) Or (DebugMode = "Enabled") Then MsgBox AccountComparison(LEVEL2_GRID1_CURRENT_GUID),vbInformation,DEBUG_TITLE & " - ROW: " & LEVEL2_GRID1_CURRENT_GUID End if 'If Checkbox is - checked - get all Product types IF (LEN(LEVEL2_CHK_AccountNotOnlyCustomers.screencontents) > 0) then IF (LEVEL2_CHK_AccountNotOnlyCustomers.screencontents = 1) Then SQLQuery_AccountInfo = Replace(SQLQuery_AccountInfo,"%TypeConstraint%","2,3,4,5") Else SQLQuery_AccountInfo = Replace(SQLQuery_AccountInfo,"%TypeConstraint%","2") End if Else SQLQuery_AccountInfo = Replace(SQLQuery_AccountInfo,"%TypeConstraint%","2") End if SQLQuery_AccountInfo=Replace(SQLQuery_AccountInfo,vbCr,"") SQLQuery_AccountInfo=Replace(SQLQuery_AccountInfo,vbLf,"") If (DEBUG_ON = True) Or (DebugMode = "Enabled") Then MsgBox SQLQuery_AccountInfo,vbInformation,DEBUG_TITLE & " - " & SQLQuery_AccountInfo End if 'Start query for right grid Set SQLResult_AccountInfo = Conn.Select(SQLQuery_AccountInfo) If (SQLResult_AccountInfo.RowCount) > 0 Then LEVEL2_Grid2.IsRedraw = False 'Fill left Frame / Table If (SQLResult_AccountInfo.RowCount > 0) Then Do 'Inactive / Active flag If (LEN(SQLResult_AccountInfo.value(52)) > 0) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,51) = 0 Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,51) = 1 End if '-------------------------------------------------------- AccountFlag = cint(SQLResult_AccountInfo.value(3)) 'Charge-/Identflag c025 in v021 'Determ type of account ''Kundenkonto If (AccountFlag = 2) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,52) = 1 'Kundeflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,53) = 0 'Lieferantflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,54) = 0 'Kunde (Interessent) flag CWLCurrentWindow.ActiveWindow.Vars.Value(495,55) = 0 'Lieferant (Interessent) flag ''Lieferant ElseIf (AccountFlag = 3) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,52) = 0 'Kundeflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,53) = 1 'Lieferantflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,54) = 0 'Kunde (Interessent) flag CWLCurrentWindow.ActiveWindow.Vars.Value(495,55) = 0 'Lieferant (Interessent) flag ''Kunde (Interessent) ElseIf (AccountFlag = 4) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,52) = 0 'Kundeflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,53) = 0 'Lieferantflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,54) = 1 'Kunde (Interessent) flag CWLCurrentWindow.ActiveWindow.Vars.Value(495,55) = 0 'Lieferant (Interessent) flag ''Lieferant (Interessent) ElseIf (AccountFlag = 5) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,52) = 0 'Kundeflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,53) = 0 'Lieferantflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,54) = 0 'Kunde (Interessent) flag CWLCurrentWindow.ActiveWindow.Vars.Value(495,55) = 1 'Lieferant (Interessent) flag ''Should not happen... Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,52) = 0 'Kundeflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,53) = 0 'Lieferantflag CWLCurrentWindow.ActiveWindow.Vars.Value(495,54) = 0 'Kunde (Interessent) flag CWLCurrentWindow.ActiveWindow.Vars.Value(495,55) = 0 'Lieferant (Interessent) flag End if '-------------------------------------------------------- CWLCurrentWindow.ActiveWindow.Vars.Value(495,56) = (cstr(SQLResult_AccountInfo.value(49))) 'FAKT Kontonummer CWLCurrentWindow.ActiveWindow.Vars.Value(495,57) = (cstr(SQLResult_AccountInfo.value(50))) 'FIBU Kontonummer CWLCurrentWindow.ActiveWindow.Vars.Value(495,58) = (cstr(SQLResult_AccountInfo.value(1))) 'Kontonummer CWLCurrentWindow.ActiveWindow.Vars.Value(495,59) = (cstr(SQLResult_AccountInfo.value(2))) 'Kontobeschreibung LEVEL2_Grid2.AddLine() 'Trick it, because rowcount wont work If (SQLResult_AccountInfo.NextRecord = False) Then Exit Do End If Loop End If 'Show count down below the table IF (LEVEL2_Grid2.LineCount = 1) Then CWLCurrentWindow.ActiveWindow.Vars.Value(495,50) = (Cstr(LEVEL2_Grid2.LineCount) & " Konto wird angezeigt") Else CWLCurrentWindow.ActiveWindow.Vars.Value(495,50) = (Cstr(LEVEL2_Grid2.LineCount) & " Konten werden angezeigt") End if LEVEL2_Grid2.SetFooterColumn LEVEL2_GRID2_COLUMN_ACCOUNT_DESCRIPTION,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,50,true LEVEL2_Grid2.Footer LEVEL2_Grid2.IsRedraw = True 'Set DrilDown to Line 0, to set it for the column '50 = Personenkonten, 21 = Artikel LEVEL2_Grid2.SetDrillDown 0, LEVEL2_GRID2_COLUMN_FAKTSUBACCOUNTNR, 50 LEVEL2_Grid2.SetDrillDown 0, LEVEL2_GRID2_COLUMN_FIBUSUBACCOUNTNR, 50 LEVEL2_Grid2.SetDrillDown 0, LEVEL2_GRID2_COLUMN_ACCOUNT_NUMBER, 50 Else LEVEL2_Grid2.IsRedraw = False LEVEL2_Grid2.Clear LEVEL2_Grid2.InitUserGrid LEVEL2_Grid2.Header CWLCurrentWindow.ActiveWindow.Vars.Value(495,50) = "Keine Konten gefunden" LEVEL2_Grid2.SetFooterColumn LEVEL2_GRID2_COLUMN_ACCOUNT_DESCRIPTION,"T21,Z10,L30,H10,Zeilenzähler","l","V",0,495,50,true LEVEL2_Grid2.Footer LEVEL2_Grid2.IsRedraw = True End If End If End if End Sub