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



I think maybe you need to look at the CLOSQLCSR parameter of the CRTSQLRPGI
command. It sounds to me as if your service program is probably running in
the caller's activation group, and the SQL RPG module was compiled with
CLOSQLCSR(*ENDACTGRP), which, I think, means the file will remain open (and
therefore locked) until the activation group ends.

Recompiling with CLOSQLCSR(*ENDMOD) will probably cause the file to be
closed and unlocked when you return from the service program module to the
caller.

Let us know if this does the trick.

Pete

<rob@xxxxxxxxx> wrote in message
news:OFC4BBACD7.6B0AC049-ON05256D11.007495E7-05256D11.0074CF14@xxxxxxxxxx
> After executing the following the file is locked.  How do I unlock the
> file, from within the RPG?  Service program.  No suggestions of the
> following please:
> - seton LR
> - RCLACTGRP
> - ENDJOB
>
>      C/EXEC SQL
>      C+  Select data into :NameWork from zpal01
>      C+    where pkey = 'COMPANY   '
>      C/END-EXEC
>      C                   If        sqlcod=0
>      C                   Return    NameWork
>      C                   Else
>      C                   Eval      Cmd='SNDPPGMMSG MSGID(CPF9898) '+
>      C                                 'MSGDTA(' + apostrophe +
>      C                                 'Attempt to access ZPAL01 for ' +
>      C                                 'COMPANY record resulted in an ' +
>      C                                 'SQL code of ' +
>      C                                 %trim(%editc(sqlcod:'Z')) +
>      C                                 apostrophe +
>      C                                 ') MSGTYPE(*ESCAPE) ' +
>      C                                 'MSGF(QCPFMSG)'
>      C                   Eval      Status=ExecCmd(Cmd)
>      C                   Return    *blanks
>      C                   EndIf
>
> Isolation clause?
> For read only clause?
>
>
> Rob Berendt
> --
> "They that can give up essential liberty to obtain a little temporary
> safety deserve neither liberty nor safety."
> Benjamin Franklin
> _______________________________________________
> 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.cgi/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.