Hello -
How can you make and exact copy of a batch job in the same repository?
Thank you.
TheSource (BOB member since 2006-01-13)
Hello -
How can you make and exact copy of a batch job in the same repository?
Thank you.
TheSource (BOB member since 2006-01-13)
Right-click and choose Replicate.
dnewton (BOB member since 2004-01-30)
Thank you.
TheSource (BOB member since 2006-01-13)
Keep in mind, this copies only the first level object and its second level objects, e.g. job and its scripts. The workflow/dataflow calls within are copied as well but not the workflows/dataflows themselves. [/b]
Werner Daehn (BOB member since 2004-12-17)
Is there any way to “replicate with dependents”, or similar?
George (BOB member since 2003-06-27)
Hi George,
I guess a return question would be, why would you want to replicate the job and all of it’s dependants (dependancy tree) into the same repo?
What’s your development scenario? How are you going to use this new job?
regards,
Sae
sae37 (BOB member since 2005-05-10)
Hi Sae,
It’s not for me, it’s for a colleague!
I guess it’s to develop a new version of the job whilst leaving the original intact. The alternative would be to use a separate local repo but that may not be an option in this case.
George
George (BOB member since 2003-06-27)
Hi George,
I was just curious because everyone has their own development environments and strategies. As previously stated, you can’t replicate the whole job+deps, but I was wondering if you could approach the dev in a slightly different manner.
My preference would probably be to just amend the existing job in your DEV local repo and keep the original version in a test repo. There’s a whole host of options for using seperate local repositories for dev/test/production areas, and the use of the central repository and it’s version and label control for versioning, which is probably appropriate for your situation. But then you’d have to have that sort of env in place for that to happen.
However, I guess you’re asking this specific question because you have ruled out other options. In which case IMO the best approach is just to replicate the job and then adhoc replicate / replace existing objects as you go. This way, at least you won’t need to change objects that don’t require rework. If that isn’t acceptable, then just replicate/replace everything, which yes is a bt of a drag.
But bear in mind that if you’re using a central repo, and you create an altogether new job, then you won’t be able to take advantages of the DI version control.
Sae
sae37 (BOB member since 2005-05-10)
Hi guys, new to the forum.
I need to do a full copy of an already created batch job into the same repository and I want to do some changes to the sql statement inside a query in the data flow. I did a replicate of the original batch job, but when I changed the sql statement of the replicate job, the original one gets changed as well. Is there anyway that I can just change the replicate only?
My current situation is this :
I have to ETL huge tables from another oracle DB to my side. But due to connection issues, all batch jobs can only last 4-5 minutes before it disconnects. So I have to split 1 huge batch job into many smaller ones. Re-creating every batch job with all the scripts/work flows/data flows/query is gonna take me forever. So is there anyway I can just copy the batch job and just change the sql statement in the query?
Thanks in advance.
matthew.tian (BOB member since 2011-01-18)
[quote:8a04870005=“matthew.tian”]So is there anyway I can just copy the batch job and just change the sql statement in the query?
[/quote]
To suffice your purpose, you can replicate the job and the dataflow in which you want to change the statement.
In replicated/copy job, remove the existing dataflow and keep the replicated dataflow. And now you can change the SQL statement in the replicated data flow.
Job1 -> … -> DF1
Replicate Job1 as Job2 and DF1 as DF2.
The job Job2 will be having still DF1. Remove DF1 and add DF2.
Change the SQL in DF2.
sameer81 (BOB member since 2007-09-15)
Hi Sameer, thanks for reply.
The problem is replicated jobs will follow the original one, so if I change anything (remove dataflow/workflow) in the replicated job, the original one’s dataflow/workflow gets removed as well. Which isn’t what I want.
matthew.tian (BOB member since 2011-01-18)
Oops…My mistake…
You need to replicate all the dependent reusable components only like Workflow or Dataflow.
For e.g.
Job1 -> WF1 (DF1 -> DF2 -> DF3) -> WF2 (DF4 -> DF5)
For e.g if you want replicate the job and modify DF3. Then
Replicate Job1.
Replicate WF1.
Replicate DF3.
Since you are just changing DF3, you dont need replicate DF1 and DF2 and WF2 and its dependents.
Copy of Job1 -> Copy of WF1 (DF1 -> DF2 -> Copy of DF3) -> WF2 (DF4 -> DF5)
sameer81 (BOB member since 2007-09-15)
Okay, just to make sure I understand you properly.
What I’m doing now is :
Job1 -> WF1 -> Scripts+WF2 -> Scripts+WF3 ->DF_EXTRACT -> DF_LOAD
I need to replicate Job1, WF1, WF2, WF3 and DF_EXTRACT?
Both DFs are inside WF3.
I’m sorry if this workflow is really messy, this jobs were created by external company and I had to fine tune to our purpose. Don’t really have much experience with BODS
Correct me if I’m wrong, thanks again Sameer.
matthew.tian (BOB member since 2011-01-18)
Sameer, your way works. I had to replicate all 3 work flows and DF_EXTRACT though. Not the perfect shortcut I wanted but still it saves me some time. Hope anyone can give me another solution or better yet, hope this feature can be added into BODS
Replicating 3 works flows, 1 data flow and renaming them for 107 jobs is really tedious
edit: then again, not so tedious. I’ve finished creating all the jobs. Thanks Sameer, save me from manual job creation hell.
matthew.tian (BOB member since 2011-01-18)