× Discuss on Template programming, jBASE programming, Enquiries, No-File enquiry, Enquiry routines, Version, Version routines, Menus, Abbriviations, Creating local reference fields, Fast path enquiries, Creating charts and graphs, Generating Reports, Deal slips, Straight through processing, Multi Company and Multi Book setup, Tabbed screens, Composite Screens, T24 API, etc...

Capture Transaction ID from OFS.POST.MESSAGE

  • fishessss
  • Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 4
  • Thank you received: 0

fishessss created the topic: Capture Transaction ID from OFS.POST.MESSAGE

Hi,

Data is sent into T24 via Temenos Web Services(TWS) and stored in a Template. From this template, it will invoke a routine which will take the data to post OFS to create a record.

For example, with data from the template, Customer record is created using OFS.POST.MESSAGE.

Is there anyway the code can return the transaction ID from the Customer Record?

There was a method that was shared previously, which is to first obtain the next CUSTOMER ID using GET.NEXT.ID, before inputting it as part of the OFS string.

The following code is used, however, the COMI returned is always the ID of the template, instead of the CUSTOMER ID that is passed in through the FULL.FNAME variable

FULL.FNAME = "FBNK.CUSTOMER"
V$FUNCTION = "I"
ID.CONCATFILE = ""
ID.N = ""
ID.T = ""
PGM.TYPE = ".IDA"
LIVE.RECORD.MANDATORY = "0"
CALL GET.NEXT.ID("","F")
Y.CUST.ID = COMI

Would appreciate any help for guidance as I am still fairly new to this.
#22365

Please Log in or Create an account to join the conversation.

  • VK
  • VK's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • R13|TAFC|jBASE|windoze
  • Posts: 654
  • Thank you received: 93

VK replied the topic: Capture Transaction ID from OFS.POST.MESSAGE

Hi
Calling a core subroutine could be dangerous, especially considering the fact that you amend global variables.

IMO, the only reliable way is:

When you call OFS.POST.MESSAGE, ID of request is returned to you. It's an @ID of a record in F.OFS.MESSAGE.QUEUE. The record with same @ID (or, maybe with some suffix etc) will appear in F.OFS.RESPONSE.QUEUE. All you need to do is to wait for that record to appear and to read and parse the response.

Cheers
VK
#22366

Please Log in or Create an account to join the conversation.

  • fishessss
  • Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 4
  • Thank you received: 0

fishessss replied the topic: Capture Transaction ID from OFS.POST.MESSAGE

Hi VK,

thank you for your help. I will avoid using that core subroutine then, since it will clash with Browser users.

Here is the situation,
- External interface sends in a single web request via TWS
- This data is supposed to be used to create a CUST, followed by ACCT and subsequently others like FT, LOAN, etc
- Issue here is that the ACCT and subsequent actions are dependent on the CUST ID

Having reviewed your reply,

I am thinking of using OFS.BULK.MANAGER for the multiple process in a single routine. In your opinion, would this suffice? What would your approach be to solve this?

Thank you
#22367

Please Log in or Create an account to join the conversation.

  • VK
  • VK's Avatar
  • Offline
  • Platinum Member
  • Platinum Member
  • R13|TAFC|jBASE|windoze
  • Posts: 654
  • Thank you received: 93

VK replied the topic: Capture Transaction ID from OFS.POST.MESSAGE

Hi
I tried OFS.BULK.MANAGER and it's quite powerful. Even couple of thousand records either go through all or - in case of an error - none passes.

I would go this way (though not sure if Temenos allows to use it for local developments).

Cheers
VK
#22368

Please Log in or Create an account to join the conversation.

  • fishessss
  • Topic Author
  • Offline
  • New Member
  • New Member
  • Posts: 4
  • Thank you received: 0

fishessss replied the topic: Capture Transaction ID from OFS.POST.MESSAGE

Hi VK,

Thank you for your input. Will look into using that routine.

Cheers
#22377

Please Log in or Create an account to join the conversation.

Time to create page: 0.229 seconds