× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.


  • Subject: Triggers and sql
  • From: "Phil" <sublime78ska@xxxxxxxxx>
  • Date: Fri, 25 May 2001 18:30:41 -0400
  • Importance: Normal

I have a trigger on a file which has been in place for years.  The ds is
defined like this:

Dparm1            ds
D parmfld                 1   3000
D  filename               1     10
D  filelib               11     20
D  mbrname               21     30
D  tgrevent              31     31
D  tgrtime               32     32
D  cmtlcklvl             33     33
D  qdbsrv104             34     36
D  ccsid                 37     40B 0
D  qdbcr                 41     44b 0
D  qdbrsv204             45     48
D  offsetorig            49     52B 0
D  lenorigrcd            53     56B 0
D  offorgnull            57     60B 0
D  lennullmap            61     64B 0
D  offstnewrc            65     68B 0
D  lennewrcd             69     72B 0
D  offstnewby            73     76B 0
D  lennewmap             77     80B 0
D
Dparm2            ds
D parm1len                1      4b 0


Everything is fine when the file is updated with traditional I/O but I get
an error when trying to update with sql.  I get the error on eval dtaqmsg =
parmfld.  But only with SQL.  Native i/o & dfu doesn't get the error.  The
error is MCH0601 Message. Space offset X'000013D0' or teraspace offset
X'0000000000000000' is outside current limit for object &1.

In debug, I can see the contents of parm1 and all of the subfields except
parmfld.  In debug, the error is CPF8E17 Pointer not set for location
referenced.  Anyone know what causes this, and why does it fail with sql
only?  The rest of the program is below.

Thanks for any help,

Phil


C     *entry        plist
C                   parm                    parm1
C                   parm                    parm2
C
C                   eval      dtaqmsg = parmfld
C
C                   call      'QSNDDTAQ'
C                   parm      'ORDERDQ'     dtaqname
C                   parm      '*LIBL'       dtaqlib
C                   parm      5000          dtaqmsgsz
C                   parm                    dtaqmsg
C                   return


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com

+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-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 thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 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.