Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SYSADDITIONALCRITERIA = ADVANCEDSEARCH.GETADDITIONALCRITERIA();
- /* Getting stocks */
- OBJECT:
- STRING SELWHR,
- DATE EARLYDATE,
- TABLE EARLYDATETABLE,
- INTEGER RIGHTAMOUNTFOUND,
- INTEGER RIGHTAMOUNTCOUNT,
- TABLE PRICETABLE,
- STRING TRIMMED;
- RIGHTAMOUNTFOUND = 0;
- RIGHTAMOUNTCOUNT = 0;
- IF ISOPTIONS THEN
- IF VARIANTSREC.FETCHVARIANTKEY(TXTCOMPANY,SVARIANTKEY,SYS_CURRENTDATE) == 0 THEN
- RETURN;
- ENDIF;
- ENDIF;
- /*HT 00000106 ANDRIUSMUR 22.10.2018 [CH00566] [TS30134] BEGIN */
- IF ISSTOCKPLACETEXT == 1 THEN
- INVREPORTREC.INVT21D001LISTING(TXTCOMPANY,CP(TXTPLANT),CP(TXTWAREHOUSE),CP(TXTSTOCKPLACESMALL),CP(TXTSPECIALSTOCK),CP(TXTMATERIAL),CP(TXTSTEXT),CP(TXTBATCHNUM),TXTDATEFROM,ISOPTIONS,CP(SWVOPTIONS2),CP(SVARIANTKEY),SCSTOCKTYPE,CP(SCMATTYPE),CP(SCMATGRP),ISCANCELMOV, ISFROMMATX, CP(SCLANGU), CP(SCMATXSTEXT), CP(ISSTOCKPLACETEXT), CP(TXTSTOCKPLACEDESCRIPTION) );
- ELSE
- INVREPORTREC.INVT21D001LISTING(TXTCOMPANY,CP(TXTPLANT),CP(TXTWAREHOUSE),CP(TXTSTOCKPLACE),CP(TXTSPECIALSTOCK),CP(TXTMATERIAL),CP(TXTSTEXT),CP(TXTBATCHNUM),TXTDATEFROM,ISOPTIONS,CP(SWVOPTIONS2),CP(SVARIANTKEY),SCSTOCKTYPE,CP(SCMATTYPE),CP(SCMATGRP),ISCANCELMOV, ISFROMMATX, CP(SCLANGU), CP(SCMATXSTEXT), CP(0), CP(''));
- ENDIF;
- /*HT 00000106 ANDRIUSMUR 22.10.2018 [CH00566] [TS30134] END */
- /*HT 00000116 TITASSIU 24.04.2019 START*/
- IF SHOWMOREDATA == 1 THEN
- APPEND COLUMN EARLYDATE, DATE, 50 TO TBLCURRENTSTOCKTMP;
- APPEND COLUMN COSTBYQTY, DECIMAL, 21 TO TBLCURRENTSTOCKTMP;
- SELECT TRIM(UPPER(I.MATERIAL)) AS MATERIAL, SUM((1 - 2 * I.QPOSTWAY) * I.SKQUANTITY) AS DBALQTY,
- SUM((1 - 2 * I.QPOSTWAY) * C.HPRICE * I.QUANTITY / C.PUNIT) AS DBALAMNT FROM IASINVITEM I LEFT OUTER
- JOIN IASINVCOST C ON (I.CLIENT = C.CLIENT AND I.COMPANY = C.COMPANY AND I.INVDOCTYPE = C.INVDOCTYPE
- AND I.INVDOCNUM = C.INVDOCNUM AND I.INVDOCITEM = C.INVDOCITEM AND C.ACCSTD = 2) INNER JOIN IASINV004 T ON (T.CLIENT = I.CLIENT
- AND T.COMPANY = I.COMPANY AND T.TRANSACT = I.TRANTYPE AND T.INVMANAG = I.INVMANAG AND T.ORDERTYPE = I.ORDERTYPE
- AND T.SPECIALSTOCK = I.SPECIALSTOCK AND T.ISPRICING = 1) LEFT OUTER JOIN ( SELECT A.CLIENT, A.COMPANY, A.REFDOCTYPE, A.REFDOCNUM,
- A.REFDOCITEM, SUM(CASE A.QPOSTWAY WHEN 1 THEN -1 ELSE 1 END * A.SKQUANTITY) AS QUANTITY FROM IASINVITEM A GROUP BY A.CLIENT,
- A.COMPANY, A.REFDOCTYPE, A.REFDOCNUM, A.REFDOCITEM) X ON (X.CLIENT = I.CLIENT AND X.COMPANY = I.COMPANY
- AND X.REFDOCTYPE = I.INVDOCTYPE AND X.REFDOCNUM = I.INVDOCNUM AND X.REFDOCITEM = I.INVDOCITEM ) WHERE I.CLIENT = '00'
- AND I.COMPANY = 'AKT' AND I.PLANT = '01' AND I.ISCANCELED = 0 AND I.ISYEARCLOSING = 0 AND I.DOCDATE >= '1975.01.01'
- AND I.DOCDATE <= TXTDATEFROM GROUP BY UPPER(I.MATERIAL), I.ACCOUNT, I.SKUNIT, C.HCURRENCY
- INTO PRICETABLE;
- ENDIF;
- /*HT 00000116 TITASSIU 24.04.2019 END*/
- COPY TABLE TBLCURRENTSTOCKTMP INTO TBLCURRENTSTOCK;
- CLEAR ALL TBLCURRENTSTOCK;
- LOOP AT TBLCURRENTSTOCKTMP
- BEGIN
- IF TBLCURRENTSTOCKTMP_TOTALSTOCK == 0 THEN
- IF ISZEROINC == 0 THEN
- CONTINUE;
- ENDIF;
- SELECT CLIENT , STOCKPLACE
- FROM IASMATSTOCK
- WHERE CLIENT = SYS_CLIENT
- AND COMPANY = TXTCOMPANY
- AND PLANT = TBLCURRENTSTOCKTMP_PLANT
- AND WAREHOUSE = TBLCURRENTSTOCKTMP_WAREHOUSE
- AND (STOCKPLACE = TBLCURRENTSTOCKTMP_STOCKPLACE
- OR STOCKPLACE = '*' )
- AND MATERIAL = TBLCURRENTSTOCKTMP_MATERIAL
- AND VALIDFROM <= TXTDATEFROM
- AND VALIDUNTIL >= TXTDATEFROM
- INTO TBLMATSTOCKTMP;
- IF !SELECTED THEN
- CONTINUE;
- ENDIF;
- IF SELECTED
- && TBLMATSTOCKTMP_STOCKPLACE == '*'
- && TBLCURRENTSTOCKTMP_STOCKPLACE != TBLMATSTOCKTMP_STOCKPLACE THEN
- SELECT COMPANY, PLANT, WAREHOUSE, STOCKPLACE
- FROM IASINV007
- WHERE CLIENT = SYS_CLIENT
- AND COMPANY = TBLCURRENTSTOCKTMP_COMPANY
- AND PLANT = TBLCURRENTSTOCKTMP_PLANT
- AND WAREHOUSE = TBLCURRENTSTOCKTMP_WAREHOUSE
- AND STOCKPLACE = TBLCURRENTSTOCKTMP_STOCKPLACE
- AND ISPASSIVE = 0;
- ENDIF;
- IF !SELECTED THEN
- CONTINUE;
- ENDIF;
- ENDIF;
- /*HT 00000116 TITASSIU 24.04.2019 START */
- IF SHOWMOREDATA == 1 THEN
- SELECT POSTDATE
- FROM IASINVITEM
- WHERE BATCHNUM = TBLCURRENTSTOCKTMP_BATCHNUM and QPOSTWAY = 0
- ORDER BY POSTDATE LIMIT 1 INTO EARLYDATETABLE;
- TBLCURRENTSTOCKTMP_EARLYDATE = EARLYDATETABLE_POSTDATE;
- /* NUKOPIJUOTAS SELECTAS IŠ INVT30A */
- WHILE RIGHTAMOUNTFOUND == 0
- BEGIN
- TRIMMED = TRIM(TBLCURRENTSTOCKTMP_MATERIAL);
- IF RIGHTAMOUNTCOUNT == 0 THEN
- LOCATERECORD SEQUENTIAL COLUMNS MATERIAL VALUES @TRIMMED ON PRICETABLE NOTCASESENSITIVE;
- ELSE
- LOCATERECORD SEQUENTIAL COLUMNS MATERIAL VALUES @TRIMMED ON PRICETABLE NOTCASESENSITIVE NEXT;
- ENDIF;
- IF RIGHTAMOUNTCOUNT == 5 THEN
- RIGHTAMOUNTFOUND = 1;
- ENDIF;
- RIGHTAMOUNTCOUNT = RIGHTAMOUNTCOUNT + 1;
- IF TRIMMED == 1 THEN
- RIGHTAMOUNTFOUND = 1;
- ENDIF;
- IF SYS_STATUS THEN
- TBLCURRENTSTOCKTMP_COSTBYQTY = 0;
- RIGHTAMOUNTFOUND = 1;
- ELSE
- IF PRICETABLE_DBALAMNT != 0 THEN
- TBLCURRENTSTOCKTMP_COSTBYQTY = TBLCURRENTSTOCKTMP_TOTALSTOCK * ( PRICETABLE_DBALAMNT / PRICETABLE_DBALQTY );
- RIGHTAMOUNTFOUND = 1;
- ENDIF;
- ENDIF;
- ENDWHILE;
- RIGHTAMOUNTFOUND = 0;
- RIGHTAMOUNTCOUNT = 0;
- ENDIF;
- /*HT 00000116 TITASSIU 24.04.2019 END */
- APPEND ROW TO TBLCURRENTSTOCK;
- MOVE-CORRESPONDING TBLCURRENTSTOCKTMP TO TBLCURRENTSTOCK;
- IF SCSTOCKTYPE == 0
- || SCSTOCKTYPE == 1 THEN
- TBLCURRENTSTOCK_TOTALSTOCK = TBLCURRENTSTOCK_TOTALSTOCK - TBLCURRENTSTOCK_SOFTRESSTOCK;
- ELSE
- TBLCURRENTSTOCK_SOFTRESSTOCK = 0;
- ENDIF;
- IF TBLCURRENTSTOCK_ISVARIANT THEN
- THIS.GETOPTIONTXT();
- ENDIF;
- ENDLOOP;
- GROUPTOTALVALUE = '';
- GRP1VALUE = '';
- IF GRP1 != 0 THEN
- SWITCH GRP1
- CASE 1:
- GRP1VALUE = '#MATERIAL$STEXT$SKUNIT$QUNITX#';
- CASE 2:
- GRP1VALUE = '#PLANT$SKUNIT$QUNITX#';
- CASE 3:
- GRP1VALUE = '#WAREHOUSE$SKUNIT$QUNITX#';
- CASE 4:
- GRP1VALUE = '#STOCKPLACE$SKUNIT$QUNITX#';
- CASE 5:
- GRP1VALUE = '#BATCHNUM$SKUNIT$QUNITX#';
- CASE 6:
- GRP1VALUE = '#VOPTIONS$MATERIAL$STEXT$SKUNIT$QUNITX$VOPTIONSDESC#';
- ENDSWITCH;
- GROUPTOTALVALUE = GROUPTOTALVALUE + GRP1VALUE;
- ENDIF;
- GRP2VALUE = '';
- IF GRP2 != 0 THEN
- SWITCH GRP2
- CASE 1:
- GRP2VALUE = '#MATERIAL$STEXT$SKUNIT$QUNITX#';
- CASE 2:
- GRP2VALUE = '#PLANT$SKUNIT$QUNITX#';
- CASE 3:
- GRP2VALUE = '#WAREHOUSE$SKUNIT$QUNITX#';
- CASE 4:
- GRP2VALUE = '#STOCKPLACE$SKUNIT$QUNITX#';
- CASE 5:
- GRP2VALUE = '#BATCHNUM$SKUNIT$QUNITX#';
- CASE 6:
- GRP2VALUE = '#VOPTIONS$MATERIAL$STEXT$SKUNIT$QUNITX$VOPTIONSDESC#';
- ENDSWITCH;
- GROUPTOTALVALUE = GROUPTOTALVALUE + GRP2VALUE;
- ENDIF;
- GRP3VALUE = '';
- IF GRP3 != 0 THEN
- SWITCH GRP3
- CASE 1:
- GRP3VALUE = '#MATERIAL$STEXT$SKUNIT$QUNITX#';
- CASE 2:
- GRP3VALUE = '#PLANT$SKUNIT$QUNITX#';
- CASE 3:
- GRP3VALUE = '#WAREHOUSE$SKUNIT$QUNITX#';
- CASE 4:
- GRP3VALUE = '#STOCKPLACE$SKUNIT$QUNITX#';
- CASE 5:
- GRP3VALUE = '#BATCHNUM$SKUNIT$QUNITX#';
- CASE 6:
- GRP3VALUE = '#VOPTIONS$MATERIAL$STEXT$SKUNIT$QUNITX$VOPTIONSDESC#';
- ENDSWITCH;
- GROUPTOTALVALUE = GROUPTOTALVALUE + GRP3VALUE;
- ENDIF;
- GRP4VALUE = '';
- IF GRP4 != 0 THEN
- SWITCH GRP4
- CASE 1:
- GRP4VALUE = '#MATERIAL$STEXT$SKUNIT$QUNITX#';
- CASE 2:
- GRP4VALUE = '#PLANT$SKUNIT$QUNITX#';
- CASE 3:
- GRP4VALUE = '#WAREHOUSE$SKUNIT$QUNITX#';
- CASE 4:
- GRP4VALUE = '#STOCKPLACE$SKUNIT$QUNITX#';
- CASE 5:
- GRP4VALUE = '#BATCHNUM$SKUNIT$QUNITX#';
- CASE 6:
- GRP4VALUE = '#VOPTIONS$MATERIAL$STEXT$SKUNIT$QUNITX$VOPTIONSDESC#';
- ENDSWITCH;
- GROUPTOTALVALUE = GROUPTOTALVALUE + GRP4VALUE;
- ENDIF;
- IF GROUPTOTALVALUE != '' THEN
- GRPCOLOUR = '#' + LBLCLR1 + '#' + LBLCLR2 + '#' + LBLCLR3 + '#' + LBLCLR4 + '#' + GLOBCLR5 + '#';
- TABLEGRPENGINEREC.MAKEITEMGROUP(0,'TBLCURRENTSTOCK',GROUPTOTALVALUE,'#TOTALSTOCK#SOFTRESSTOCK#QUANTITYX#',GRPTYPE,'','',GRPCOLOUR);
- ENDIF;
- THIS.SHOWHIDECOLUMNS();
- /*HT 00000106 ANDRIUSMUR 17.07.2019 [CH01987] [TS87726] BEGIN*/
- THIS.COLORLINES();
- /*HT 00000106 ANDRIUSMUR 17.07.2019 [CH01987] [TS87726] END*/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement