Focal Point Banner
Community Center Education Summit Technical Support User Groups
Let's Get Social!

Facebook Twitter LinkedIn YouTube
Focal Point    Focal Point Forums  Hop To Forum Categories  iWay Software Product Forum on Focal Point    [SOLVED] Iterate Over Many Libraries For Same Data Files
Go
New
Search
Notify
Tools
Reply
  
[SOLVED] Iterate Over Many Libraries For Same Data Files
 Login/Join
 
Member
posted
Hello all, thanks for the approval to be in the forum. I'm using Data Migrator to replicate our data from an IBM iSeries over to MS SQL Server. We have many libraries, and each of them has identically structured files in them. What I want to do is use a table(s) to drive all this, or as much as I can. I've accomplished part of this but I'm having trouble taking it to the next step.

Data
For this example assume we have 500 libraries and each has 10 data files in them. A subset would be:
DTA100/ORDERHeader
DTA100/ORDERDetail
DTA500/ORDERHeader
DTA500/ORDERDetail

I currently have a table that has all the files I want, and their associated libraries. I have a view which only shows the ORDERHeader files, and another for ORDERDetail. I read this data in and put it into the "TABLENAME" field in the Synonym I've created each data file. An example would be that when the ORDERHeader view is read, it retrieves "DTA100/ORDERHeader" into a variable and puts it in "TABLENAME" in the synonym and things work. Assume I've populated the other necessary fields as those aren't the problem I need to solve.

The end result of the above is that I'll get ORDERHeader from DTA100, then DTA500, and so on, the next step would get ORDERDetail from DTA100, then DTA500, and so on.

What I WANT to do is process at ten files from DTA100, then all 10 files from DTA500, and the rest of the libraries. The problem is that the "TABLENAME" property in the synonym is full path. I dont' know how to concatenate text to populate the field.

In the "TABLENAME" property I'd like to do something like: &&LIBRARY + "/" + ORDERHeader
Where &&LIBRARY is the DTA100, DTA500, etc. Notice I'm trying to construct the full path in the property. Can I do this? Can I do it here or does it need to happen in some sort of scripting?

I know this may be confusing, but using this product depends me being able to solve this problem.

Thanks in advance.
Michael Henry

This message has been edited. Last edited by: FP Mod Chuck,


Mass Data Migrator
 
Posts: 11 | Registered: March 22, 2018Reply With QuoteReport This Post
Virtuoso
posted Hide Post
Hi Michael

First of all welcome to Focal Point. It is a great resource for getting answers to questions like yours.

It would be helpful if you could post the code you currently have so we can see the process you are using.

The answer to your question is yes you can do what you want with what is called Dialog Manager scripting code. An example would be

-SET &TABLENAME=&&LIBRARY | '/ORDERHeader';


Then use &TABLENAME for your value in the synonymn


Thank you for using Focal Point!

Chuck Wolff - Focal Point Moderator
WebFOCUS 7x and 8x, Windows, Linux All output Formats
 
Posts: 1091 | Location: Customer Support | Registered: April 12, 2005Reply With QuoteReport This Post
Member
posted Hide Post
Thanks Chuck! What you provided is what I'm looking for except I don't see a code block for the scripting code.

Right now I don't have any code, just a flow accepting rows from a table (synonym), Then handing it off to another flow that has the source and target in it and assigns variables.

I've read a few user guides, but are there any materials to consume that would help me with the scripting like you mentioned? I'm a developer at heart and I think I would benefit greatly from learning how to flex this tool.


Mass Data Migrator
 
Posts: 11 | Registered: March 22, 2018Reply With QuoteReport This Post
Member
posted Hide Post
quote:
Originally posted by FP Mod Chuck:
Hi Michael

First of all welcome to Focal Point. It is a great resource for getting answers to questions like yours.

It would be helpful if you could post the code you currently have so we can see the process you are using.

The answer to your question is yes you can do what you want with what is called Dialog Manager scripting code. An example would be

-SET &TABLENAME=&&LIBRARY | '/ORDERHeader';


Then use &TABLENAME for your value in the synonymn


Would this happen in the "Text View" in the flow? That's the only place I see anything which looks like scripting.


Mass Data Migrator
 
Posts: 11 | Registered: March 22, 2018Reply With QuoteReport This Post
Guru
posted Hide Post
Please don't edit the Flow in text view; changes will be lost when you reopen.

You can assign values for variables on the Process Flow tab of the iterated Flow that uses the Synonym in a Variables object before the (purple) data flow.

Note that you must assign a GLOBAL variable (&&TABLENAME) for it be usable in the synonym.

 
Posts: 362 | Location: New York City | Registered: May 03, 2007Reply With QuoteReport This Post
Member
posted Hide Post
quote:
Originally posted by Clif:
Please don't edit the Flow in text view; changes will be lost when you reopen.

You can assign values for variables on the Process Flow tab of the iterated Flow that uses the Synonym in a Variables object before the (purple) data flow.

Note that you must assign a GLOBAL variable (&&TABLENAME) for it be usable in the synonym.



Thanks! In theory this solves my issue. I will go try it out.

Thanks again!


Mass Data Migrator
 
Posts: 11 | Registered: March 22, 2018Reply With QuoteReport This Post
  Powered by Social Strata  
 

Focal Point    Focal Point Forums  Hop To Forum Categories  iWay Software Product Forum on Focal Point    [SOLVED] Iterate Over Many Libraries For Same Data Files

Copyright © 1996-2018 Information Builders, leaders in enterprise business intelligence.