|
From: George Silber on 05/08/98 02:32 PM
To implicitly pass a variable to an LE, DTW_SQL in this case, it
must be listed in the ENVIRONMENT statement for that LE in your INI
file. You apparently have one, because the default INI file that is
used does
include DTW_EDIT_CODES, along with all the others. Here is an ENVIRONMENT
statement that includes all the variables that DTW_SQL LE on the AS/400
looks for on each call:
(Note that there is a restriction that the entire statement be on a single
line in the INI file. For readability, my example will span multiple lines.)
ENVIRONMENT(DTW_SQL) /QSYS.LIB/QTCP.LIB/QTMHSQL.SRVPGM (IN DATABASE,
LOGIN,PASSWORD,TRANSACTION_SCOPE,SHOWSQL,DB_CASE,DTW_SET_TOTAL_ROWS,
START_ROW_NUM,RPT_MAX_ROWS,NULL_RPT_FIELD,DTW_EDIT_CODES,
OUT DTWTABLE,SQL_CODE,SQL_STATE,TOTAL_ROWS)
One user did complain about having to set the DTW_EDIT_CODES prior to
each DTW_SQL function that produced a report, because it was used every
time. The solution here was quite simple. Do not list it on the
ENVIRONMENT statement in the INI file. This way it is not implicitly
passed and defaults are assumed. Now you need to merely set the value
of DTW_EDIT_CODES and explicitly pass it as an IN parameter to only the
DTW_SQL functions that you wish to apply edit codes to.
EXAMPLE: ( With DTW_EDIT_CODES not on the ENVIRONMENT statement in the INI
file.)
%{ Note that edit codes are used to build edit masks for columns in the
report.
They are valid only for PACKED, ZONED and BINARY data types. Therefore, a
blank or a '*' (or any other character) is treated the same for
columns that
are not of those types. They are ignored. %}
%define DTW_EDIT_CODES = "JJJ****1 Y""
%{ Note too that DTW_SQL LE looks for DTW_EDIT_CODES by name, so do not
pass it
as 'editCodes' for instance %}
%FUNCTOIN(DTW_SQL) report1(IN DTW_EDIT_CODES){
select * from some.file
%}
%FUNCTOIN(DTW_SQL) report2(){
select * from some.file
%}
%FUNCTOIN(DTW_SQL) report3(IN DTW_EDIT_CODES){
select * from someOther.file
%}
%HTML(reports){
<center>
<H1>Report Number 1</H1><br>
@report1(DTW_EDIT_CODES)
<p>
<hr>
<H1>Report Number 2</H1><br>
@report2()
<p>
<hr>
<H1>Report Number 3</H1><br>
@report1("*****JPY*****8")
<p>
<hr>
<H1>Report Number 1 again</H1><br>
@DTW_ASSIGN(DTW_EDIT_CODES,"JPJ****J****8")
@report1(DTW_EDIT_CODES)
<p>
<hr>
</center>
%}
From: Barry Wright <Barry.Wright@tasb.org>
I have been playing around with Net.Data. Since getting back from COMMON
in New Orleans, I have able to put together some macros and really get
some neat results. I really think that it has value in my organization.
However, there are some things that I have not been able to figure out.
One is how to use the DTW_EDIT_CODES variable. I am trying to put
commas in a numeric field using the "1" or "J" edit codes and no matter
where I put the DTW_ASSIGN or the DEFINE statements, I cannot get it to
edit the fields. Can anyone give me a hint? I can send a copy of my
macro if it would help.
Thanks,
Barry Wright
Regards,
George Silber
Internet Technologies, IBM Rochester, MN.
+---
| This is the Midrange System Mailing List!
| To submit a new message, send your mail to MIDRANGE-L@midrange.com.
| To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.