Задание у меня такого типа.
добавить 2 поля с General Ledger Setup // Shortcut Dimension 1 Code,Shortcut Dimension 2 Code;//lookUp уних на таблу Dimension <- сделано.
далее, отфильтровать дополнительно еще и по этим двум полям вот этот кусок кода.
Код:
DrillDownGLEntry(Show : 'Debit,Credit,ACYDebet,ACYCredit,BeginPeriod,ACYBeginPeriod')
GLEntry.RESET;
IF (GETFILTER("Business Unit Filter") <> '') OR
(GETFILTER("Global Dimension 1 Filter") <> '') OR
(GETFILTER("Global Dimension 2 Filter") <> '') OR
(GETFILTER("Responsible Person Filter") <> '')
THEN
GLEntry.SETCURRENTKEY("G/L Account No.","Business Unit Code","Global Dimension 1 Code",
"Global Dimension 2 Code")
ELSE
GLEntry.SETCURRENTKEY("G/L Account No.","Posting Date");
IF Totaling = '' THEN
GLEntry.SETRANGE("G/L Account No.","No.")
ELSE
GLEntry.SETFILTER("G/L Account No.",Totaling);
GLEntry.SETFILTER("Posting Date",GETFILTER("Date Filter"));
GLEntry.SETFILTER("Global Dimension 1 Code",GETFILTER("Global Dimension 1 Filter"));
GLEntry.SETFILTER("Global Dimension 2 Code",GETFILTER("Global Dimension 2 Filter"));
GLEntry.SETFILTER("Business Unit Code",GETFILTER("Business Unit Filter"));
GLEntry.SETFILTER("Source Type",GETFILTER("Source Type Filter"));
GLEntry.SETFILTER("Source No.",GETFILTER("Source No. Filter"));
GLEntry.SETFILTER(GLEntry."Responsible Person",GETFILTER("Responsible Person Filter"));
CASE Show OF
Show::Debit:
GLEntry.SETFILTER("Debit Amount",'<>%1',0);
Show::Credit:
GLEntry.SETFILTER("Credit Amount",'<>%1',0);
Show::ACYDebet:
GLEntry.SETFILTER("Add.-Currency Debit Amount",'<>%1',0);
Show::ACYCredit:
GLEntry.SETFILTER("Add.-Currency Credit Amount",'<>%1',0);
Show::BeginPeriod,
Show::ACYBeginPeriod:
IF COPYSTR(GETFILTER("Date Filter"),1,2) <> '..' THEN BEGIN
IF GETRANGEMIN("Date Filter") <> 0D THEN
GLEntry.SETRANGE("Posting Date",0D,CLOSINGDATE(GETRANGEMIN("Date Filter") - 1));
END ELSE
EXIT;
ELSE
ERROR('');
END;
FORM.RUN(0,GLEntry);