× 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.



RPG Built-in-Functions cannot be used in a embedded SQL statement.
But SQL has its own scalar functions:
TRIM  = %TRIM() or %TRIMR or %TRIML
RTRIM = %TRIMR()
LTRIM = %TRIML()
STRIP works like TRIM

If CtrName, AppName, DateName are fields in your file WPUSCHEDLE and
RtnField and inPickUpDate are host variables,
you also can use static SQL.

c/EXEX SQL
C+ UPDATE PUBWRK/WPUSCHEDLE
C+    SET CtrName = :retField,
C+        AppName = :retField
C+  WHERE DateName = :inPickupDate
C/End-Exec

If CtrName, AppName and DateName are variables that hold field names, you
have to use dynamic SQL.
That means you have to built the complete SQL-statement as string, convert
it to an executable SQL statement and run it.
You eihter can use the SQL statements PREPARE and EXECUTE or EXECUTE
IMMEDIATE that combines PREPARE and EXECUTE.

  MySQLString = 'UPDATE PUBWRK/WPUSCHEDLE ' +
                '   SET ' + %Trim(ctrName)  + ' = ' + %Char(retField) + ', '
                          + %Trim(appName)  + ' = ' + %Char(retField) +
                ' WHERE ' + %Trim(dateName) + ' = ' + %Char(inPickupDate) '
 /End-Free
C/EXEC SQL  Execute Immediate :MySQLString
C/END-EXEC

Be aware, if rtnField or inPickupDate are character dates, you have to
embedd them into quotes,
(i.e. = ''' + %Char(RetField) + ''', ')

Birgitta


-----Ursprüngliche Nachricht-----
Von: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]Im Auftrag von Lim Hock-Chai
Gesendet: Donnerstag, 4. August 2005 17:16
An: RPG programming on the AS400 / iSeries
Betreff: RE: Embedded SQL in RPGLE pgm


I don't think you can use rpg bif (%trim, %char) in sql.

The best way to verify embedded sql codes is to try it in interactive sql.
Just substitute all the rpg variables with the value you want to test with.


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx]On Behalf Of RPower@xxxxxxxxxx
Sent: Thursday, August 04, 2005 10:10 AM
To: RPG programming on the AS400 / iSeries
Subject: Embedded SQL in RPGLE pgm


Ok,
I've searched the archives but can't find (or don't know what I'm looking
for) any examples of an UPDATE statement using field names that I want to
build.  I know how to do it using a plain SELECT statement and creating a
literal statement and then running it.  But what I'm trying to do this
time is something like:
     C/Exec Sql
     C+ UPDATE PUBWRK/WPUSCHEDLE
     C+ SET %Trim(ctrName) = %Char(retField),
     C+ %Trim(appName) = %Char(retField)
     C+ WHERE %Trim(dateName) = %Char(inPickupDate)
     C/End-Exec

but I don't think I'm doing this right at all am I?
Frustrated beyond all belief today...

Ron Power
Programmer
Information Services
City Of St. John's, NL
P.O. Box 908
St. John's, NL
A1C 5M2
709-576-8132
rpower@xxxxxxxxxx
http://www.stjohns.ca/
___________________________________________________________________________
Success is going from failure to failure without a loss of enthusiasm. -
Sir Winston Churchill
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.


--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.




As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.