Tibco BusinessWork Scenarios



1 )We need to Process a batch of file for every 5min. If the file takes 6 min to complete the next batch should start on the completion of the current batch file . if batch file take 3 min to complete then next match file should start on completion of 5 min . How can we achieve it?




2)We are getting a Name Value pair file and you need to update in a tabel . How can we achieve it ?(Name value pair is not fixed can be 2 or 2000).



3)My JDBC call procedure result-set is name\value pair and i need to map to the result set in response Mapper schema. How to achieve this ?



4)In Onstartup process when there is any error i need to shutdown the process. How do you achieve it?



5) I have a 5GB file . How can you process it and update in to data base ?



6)There is a excel sheet with 10 columns, we need to upload the data in this sheet into the database via Tibco BW process and the response that upload is successful or unsuccessful should be displayed back in the excel sheet. How this should be achieved.



7)Business process is listening multiple messages. if any reason my bw engine goes down , I will lose my messages. But I do not want to lose the message. How can achieve this?



8) In a group activity i need to accumulate the output of two mapper . how can i achieve this?



9) I need to validate the incoming password strength in tibco BW. how can i achieve this?



10) Each end system will place a report file at the EOD in a common location. I need to read all the files and update those file in to database table w.r.t end system. Eg . if X end system place a file then i need to update in X table. there are n no of End system. How do u achieve in tibco BW?



11) I have fetched the student details from the database with roll-no's. I need to re-arrange the records with ascending order with there name. How can we achieve this in tibco BW?



12) There is Tibco BW process which publishes a message on a JMS Queue. The message should not be lost if the publishing of JMS message times out. Thus, retry mechanism needs to be devised with following points in mind:



i).None of the messages should be lost.

ii).The retry time to post the data should be configurable

iii)Wait time between each retry should be configurable.

And message that error out first should be retried till the time it is posted successfully. (First in First

Out).

iv)An error email should be sent out for the error, and subsequently when the retry is successful, the

email should be sent out mentioning the retry count as which it was successful.



What should be the optimum design for the retry mechanism?



An Additional Scenario to the above question is that suppose we have 100 messages to publish out in order and we get an error at 20th message. Now we need to make sure that first this 20th message is published and then only the rest 80 message are published in order. How should the above retry mechanism be enhanced to handle this scenario?



13)I am getting an account no with padding Zero's. I need to delete the 0's which are padded at the end. How can you achieve it?



14)How can you send the updated concrete WSDL to the Client when there is any change?



15)There are 5 JDBC update activities in a transaction group and my 3jdbc update activity should not be the part of tnx group . How do you achieve ?



16) I need to map the data in input editor of the mapper from the process data. but in my process data i have any element. how can you map this ?




































20 comments:

  1. The questions are very good. How do we get the answers to it or validate our answers? Would you be able to share the tips on how to achieve the above?

    ReplyDelete
  2. 13)I am getting an account no with padding Zero's. I need to delete the 0's which are padded at the end. How can you achieve it?

    >> substring-before("alkd0flaj0000", "00")

    ReplyDelete
    Replies
    1. This function not valid fr acct no: 1002345

      Delete
    2. use below :
      if(tib:right($Start/group/Number, "1") = 0) then
      tib:substring-before-last($Start/group/Number,tib:right($Start/group/Number, "1"))
      else
      $Start/group/Number

      Delete
  3. 15)There are 5 JDBC update activities in a transaction group and my 3jdbc update activity should not be the part of tnx group . How do you achieve ?

    >> use the "Override transaction behaviour " for which activities you don't want to participate in transaction

    ReplyDelete
  4. 1 )We need to Process a batch of file for every 5min. If the file takes 6 min to complete the next batch should start on the completion of the current batch file . if batch file take 3 min to complete then next match file should start on completion of 5 min . How can we achieve it?

    >> This can be easily achieved by using Timer activity as Process starter and putting critical section group on activities related to processing file. So even if the next process instance starts before first instance has finished it will wait till first instance is done due to Critical Section Group.

    ReplyDelete
  5. 14)How can you send the updated concrete WSDL to the Client when there is any change?

    >> use file poller Starter, take file name as *.wsdl, and go only with poll for modify events

    ReplyDelete
  6. Question no :12
    i).None of the messages should be lost.
    >> use check point after confirmation of message, so that we can't lose it

    ReplyDelete
  7. Question no:12
    iv)An error email should be sent out for the error, and subsequently when the retry is successful, the
    email should be sent out mentioning the retry count as which it was successful
    >> take one send mail after null, connect the error transition and success transitions to null; for retry count take group with one counter variable for each iteration

    ReplyDelete
  8. 11) I have fetched the student details from the database with roll-no's. I need to re-arrange the records with ascending order with there name. How can we achieve this in tibco BW?
    >> take mapper activity after jdbc query, and surround the name element with for-each after select add child button to add sort statement to achieve ..... wish u happy mapping

    ReplyDelete
  9. 5) I have a 5GB file . How can you process it and update in to data base ?
    >> it depends on data format. repeat-until-true is best choice. based on scenario place iterate inside it

    ReplyDelete
  10. How can you send the updated concrete WSDL to the Client when there is any change?

    ReplyDelete
  11. 2: Answer: Use Parse Data and Data format pallet and in Data format pallet map Data (*)  Name / Value and map the file data into it, so data will get parsed. Then use Group activity with JDBC update and then Iterate OR Repeated until true group property, and then pass Parse data details to group.

    ReplyDelete
  12. 4 : Use engine command activity and chose command as shutdown from dropdown.

    ReplyDelete
  13. 9: I need to validate the incoming password strength in tibco BW. how can i achieve this?

    --> This can be achieve using custom Java Code with one Input and output parameters in conjunction with Regular Expression

    ReplyDelete
  14. Answers for 2 and 3 pls?


    2)We are getting a Name Value pair file and you need to update in a tabel . How can we achieve it ?(Name value pair is not fixed can be 2 or 2000).



    3)My JDBC call procedure result-set is name\value pair and i need to map to the result set in response Mapper schema. How to achieve this ?

    ReplyDelete