Page 1 of 1
zerout view
Posted: Tue Nov 24, 2020 3:51 am
by manu0521
Hi,
I am trying to create a view assign subset and then zero out in prolog
for the subset, i am doing the below code
Code: Select all
vDimension='Invoiced Partners';
vSourceSubset=vDimension| ' All N';
vMdx= '{TM1FILTERBYLEVEL( {TM1SUBSETALL( [Invoiced Partners] )}, 0)}';
if(SubsetExists(vDimension,vSourceSubset)=1);
SubsetDeleteAllElements(vdimension,vSourceSubset);
Endif;
Subsetcreatebymdx(vSourcesubset,vMdx);
viewsubsetassign('Agency Sales DWH',vZeroOutSourceView,vDimension,vSourceSubset);
I am creating a subset with mdx to get all n and then assigning it to a view
on subsertcreatebymdx i am getting an error unable to register the subset .
Does this mean i cannot create a subsetcreatebymdx on prolog ?
how can i resolve this.
Re: zerout view
Posted: Tue Nov 24, 2020 5:09 am
by howard40116
1.you can try to paste your mdx in the subset selector, validate your mdx is correct.
2.you can try to destroy your temporary subset or use subsetMDXSet.
Code: Select all
#1.SubsetDestroy
vDimension='Invoiced Partners';
vSourceSubset=vDimension| ' All N';
vMdx= '{TM1FILTERBYLEVEL( {TM1SUBSETALL( [Invoiced Partners] )}, 0)}';
if(SubsetExists(vDimension,vSourceSubset)=1);
SubsetDestroy(vdimension,vSourceSubset);
Endif;
Subsetcreatebymdx(vSourcesubset,vMdx);
viewsubsetassign('Agency Sales DWH',vZeroOutSourceView,vDimension,vSourceSubset);
#2.subsetMDXSet
vDimension='Invoiced Partners';
vSourceSubset=vDimension| ' All N';
vMdx= '{TM1FILTERBYLEVEL( {TM1SUBSETALL( [Invoiced Partners] )}, 0)}';
if(SubsetExists(vDimension,vSourceSubset)=1);
SubsetDeleteAllElements(vdimension,vSourceSubset);
SubsetMDXSet(vdimension, vSourceSubset, vMdx);
ELSE;
Subsetcreatebymdx(vSourcesubset,vMdx);
Endif;
viewsubsetassign('Agency Sales DWH',vZeroOutSourceView,vDimension,vSourceSubset);
Re: zerout view
Posted: Tue Nov 24, 2020 2:46 pm
by manu0521
stiill the same error :
vDimension='Invoiced Partners';
vSourceSubset=vDimension| ' All N';
vMdx= '{TM1FILTERBYLEVEL( {TM1SUBSETALL( [Invoiced Partners] )}, 0)}';
if(SubsetExists(vDimension,vSourceSubset)=0);
SubsetCreate(vDimension,vSourceSubset);
Else;
SubsetDeleteAllElements(vdimension,vSourceSubset);
Endif;
Subsetcreatebymdx(vSourcesubset,vMdx);
viewsubsetassign('Agency Sales DWH',vZeroOutSourceView,vDimension,vSourceSubset);
Unable to register the subset . mx is validated in subset editor.
Re: zerout view
Posted: Tue Nov 24, 2020 3:54 pm
by PavoGa
manu0521 wrote: ↑Tue Nov 24, 2020 2:46 pm
stiill the same error :
vDimension='Invoiced Partners';
vSourceSubset=vDimension| ' All N';
vMdx= '{TM1FILTERBYLEVEL( {TM1SUBSETALL( [Invoiced Partners] )}, 0)}';
if(SubsetExists(vDimension,vSourceSubset)=0);
SubsetCreate(vDimension,vSourceSubset);
Else;
SubsetDeleteAllElements(vdimension,vSourceSubset);
Endif;
Subsetcreatebymdx(vSourcesubset,vMdx);
viewsubsetassign('Agency Sales DWH',vZeroOutSourceView,vDimension,vSourceSubset);
Unable to register the subset . mx is validated in subset editor.
The problem is you are trying to create the subset when it already exists. Change this:
Code: Select all
Subsetcreatebymdx(vSourcesubset,vMdx);
# to this:
SubsetMDXSet(vDimension, vSourceSubset, vMDX);