Ir al contenido principal

Sage X3 how get the ‘available quantity’




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Funprog GET_STODISP(XXFCY,XXITM)
   Value Char XXFCY   #Stock Site
   Value Char XXITM   #Item code
   #Opens the tables
   If clalev([F:YITV]) = 0 Then Local File ITMMVT [F:YITV] : Endif
   If clalev([F:ITM]) = 0 Then Local File ITMMASTER [F:ITM] : Endif
   If clalev([F:ITG]) = 0 Then Local File ITMCATEG [F:ITG] : Endif
   Filter [F:ITM]
   Read [F:ITM]ITM0 = XXITM
   Filter [F:ITG]
   Read [F:ITG]ITG0 = "";[F:ITM]TCLCOD
   Filter [F:YITV]
   Read [F:YITV]ITV0=XXITM;XXFCY
   Local Integer WSTA
   Local Decimal YSTODIS
   WSTA=0
   YSTODIS=0
   If [F:ITG]GLOAAAFLG = 2 WSTA += 1 Endif
   If [F:ITG]GLOQQQFLG = 2 WSTA += 2 Endif
   If [F:ITG]GLORRRFLG = 2 WSTA += 4 Endif
   #Call the X3 standard procedure for X3 version 1.4.x and 5
   Call STODISPO("[F:YITV]",XXFCY,XXITM,"*","*",1,WSTA,"","",YSTODIS) From STKLIB
   #Call the X3 standard procedure for X3 Version 6
   #Call STODISPO("[F:YITV]",XXFCY,XXITM,"*","*",1,WSTA,"","","",YSTODIS) From STKLIB
End YSTODIS

Entradas populares de este blog

Valores de fstat

Fstat fstat  is a numeric status that is returned upon execution of a database operation, a sequential file operation, or a lock instruction. Syntax fstat Examples # MYTABLE is a table with a key called KEY1, that has a unique component called KEYVAL # Create a record in the table MYTABLE with they key value 1 if it doesn't exist Local File MYTABLE [MYT] Read [MYT]KEY1=1 If fstat [MYT]KEYVAL=1 : Write [MYT] If fstat MSG="The key was created in the mean time" Else MSG="Key created" Endif Else MSG="Key already exists" Endif Details fstat  is always set to '0' if the operation is successfully completed, and has a non-null value if there is an error: In a sequential read ( Getseq  and  Rdseq ),  fstat  is set to '1' at the end of the file. On  Lock ,  fstat  is set to '1' if the lock could not be performed. For a database operation ( Read ,  Look ,  Readlock ,  For ,  Write ,  ...

SAGE X3 SILENT IMPORT (IMPORTSIL) WITH ERROR CATCHING

FUENTE ORIGINAL: https://pluginx3.com/en/blog/post/sage-x3-silent-import-importsil-with-error-catching.html You already know how to manually generate a CSV file in order to import it threw a template in Sage X3. But If you wonder how to catch detailed errors after a silent import here is the solution. Sometimes you need to catch the incoming errors in order to alert the end-user regarding an issue. Closed period, wrong date etc …. Unfortunalty the standard Sage X3 silent import function doesn’t natively show the detailed errors during the import process. Call IMPORTSIL([M:IMP2]MODIMP,[M:IMP2]NOMIMP) From GIMPOBJ And the standard function ERR_IMPORT will only show the overall status of the importation and not the detailed errors. IMPORTSIL function is pushing all the log data into a tracefile in order to avoid any popup on end-user screen. So you have a log file available in order to search for errors in it. Sage X3 runtime is using the same principals standards as any shell for log...

Sage X3 Create a new CLOB Text

Here how to create a CLOB text Funprog F_CRELOB ( YABRFIC , YTEXTE ) Value Char YABRFIC Value Char YTEXTE Local Char XXRTFTXT ( 250 ) ( 3 ) XXRTFTXT ( 0 ) = "{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 MS Sans Serif;}}\viewkind4\uc1\pard\f0\fs17 " XXRTFTXT ( 1 ) = YTEXTE XXRTFTXT ( 2 ) = "\par}" Local Char X_RET Local Integer XXOK Local Char XCHAMPLIEN : XCHAMPLIEN = "YYYY" Global Char YYYY : YYYY = YABRFIC Local Clbfile WWCLOB Local Mask ACLOB [ M :ACL ] Setlob WWCLOB With XXRTFTXT [ M :ACL ] CLOB = WWCLOB Call CRE_CLOB_ACL ( XCHAMPLIEN , XXOK ) From TRTX3TEX Close Local Mask [ M :ACL ] X_RET = YYYY Kill YYYY End X_RET