cancel
Showing results for 
Search instead for 
Did you mean: 

Assign records to different remote systems in MDM

Former Member
0 Kudos

Hello Experts,

I am using qualified range to generate internal number range for vendor. The remote key & remote system details for the records are generated during syndication. My scenario is that I have couple of records in MDM for different remote systems. I want to syndicate it to the respective systems. Is there a way to identify the respective records per system with out inserting the details in "edit key mapping".

If we try specifying Remote system details in edit key mappings with a blank or specific Key value , then the qulaified number generated for vendors is overwritten with this key value mentioned in key mapping.

I need to retain both the qualified range functionality as well as tag the records to different remote systems.

Kindly advice.

Thanks and Regards,

Elizabeth.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Ravi & Mandeep,

Thanks for your reply.

My scneario goes as below:

I have two different remote systems.I am using portal for record creation. Say I

have two records created through portal in to data manager. Record 1 is exclusively

for remote system 1 & record 2 is for remote system 2. So through workflow how I am

going to identify the records to be syndicated to appropriate remote system. If

doing manually it works fine by selecting appropriate remote system & correct map.

In my case the maps for both the remote systems are different.

Kindly advice.

Thanks,

Elizabeth.

Former Member
0 Kudos

Hi Elizabeth,

While creating Record 1 through portal do you have any field e.g. Remote System ?

If you have any field in your Portal/MDM which indicates that Record 1 belongs to System A and Record 2 Belongs to System B.

Then you can use this Field identifier to syndicate records to their respective systems using MDM Worlflow.

For this you will create a Validation which tells remote system based on field identifier. e.g. you have validation expression as Field identifier = System A which returns true if record belongs to system A and false if it belongs to system B.

Your workflow would be like this:

Start>Branch( based on Field Identifier Validation)-> if Pass (i.e. system A) syndicate Step 1--> Stop1.

-


> If Fails (i.e. system B) syndicate Step 2---> Stop2.

Note: When you use outbound port in MDM work-flow of Syndicate step, Set property Processing type = Manual in Console.

Please mark thread as answered if your query solves.

Regards,

Mandeep Saini

Former Member
0 Kudos

Hello Mandeep,

Thanks a lot for your valuable insights.

I have followed the steps as mentioned by you. Created the required Field identifiers, Validations, Created Workflow with Barnch step.

My current concern is that how and where can i specify the sequence/parallel exceution of the different syndication steps.

Example: If Validn1 is Pass execute Syndicate1 step.

If VAlidn2 is Pass exceute Syndiacate2 step.

If both fail exeute Syndicate 3 ...

I have assigned Validn1, Vaildn2 and Validn3 in Branch step individually. But if my Syndicate1 step does not execute successfully it keeps my other records waiting at syndicate2 step. I want all of the syndicate steps to be executed paralelly and not wait for the previous syndicate steps completion. Can this be achieved?

Kindly advice.

Thanks,

Elizabeth.

Former Member
0 Kudos

Hi Elizabeth,

As per my understanding, If your syndication services are running and you are using different syndication maps then if syndication1 is not executed successfully then syndication 2 should not be waited, i mean syndication step 2 will be processed independent of syndication 1.

But if you are using same map then these syndication's will depend on each other like if during import manager if 1 file go to exception folder and another file comes then till 1 file not corrected, port is blocked and all other files get not imported.

Also In MDM Console, Using Auxiliary Server, Mount your MDSS and set number of seconds = 0 for Manual Syndication Task Delays (seconds) which syndicated all requests from ports associated with the repository.

Regards,

Mandeep Saini

Former Member
0 Kudos

Hi ELizabeth

While saving the record from portal you can also update the remote key and remote system details using APIs.

This way we will now which records are meant for remote system1 and which are for remote system2.

The syndication map will automatically take care to syndicate only those records which are meant for system1 or 2.

Hope this clarifies-

Ravi

Former Member
0 Kudos

Hello Mandeep,

I am still facing the same concern. My workflow looks as below:

Start--> Barnch--> VAlidn1

Vaildatn2

Validn3

Former Member
0 Kudos

Hello Mandeep,

The SS service has been strated and i have done the suggested settings too. I am still facing the same concern. My workflow looks as below:

Start----> Branch -


> Syndicate1(Port1_Map1) -


>Stop

-


> Syndicate1(Port2_Map2) -


>Stop

-


> Syndicate1(Port3_Map3) -


>Stop

-


> Syndicate1(Port4_Map4) -


>Stop

Thre Record against which i run this worflow has a true condtion for Validation1 and Validation3; however the workflow executes the first true condition and its relevant syndiacte step only (in this case Syndicate1 alone is executed).

I need the workflow to exceute all my true conditional steps. I also tried using Merge step, but it did not help.

Kindly Advice.

Thanks,

Elizabeth..

Former Member
0 Kudos

Hi Elizabeth,

I don't have MDM workflow installed at my PC else i test it and let you know exactly.

Things which i can share with you that make sure Default validation of your Branch Step for records that fail every validations.

I mean if you are using here 3 validations in branch step then you have four output out of branch step and last default should be one which fails for every validation. Just check it if it helps you to execute all of your syndication steps.

Other thing if you want to merge parallel threads to recombine into a single job then use Group Step rather than Merge Step.

Regards,

Mandeep Saini

Former Member
0 Kudos

Hello Mandeep,

Yes, I do have the default branch step in place. Also I hjave already tried using the Group step, it cannot be used with Syndicate steps. Group step can be used only on Process, Notify, Group and connect steps.

Any other options that i can try?

Thanks,

Elizabeth.

former_member205403
Active Contributor
0 Kudos

Hi,

I fully agree with Mandeep;

"If your syndication services are running and you are using different syndication maps 
then if syndication1 is not executed successfully then syndication 2 should not be waited,
 i mean syndication step 2 will be processed independent of syndication 1."

But still i feel syndication server execute syndication in sequence for different ports one by one.. i.e. it will execute syndication for first port. after it is done with first port, it will execute syndication on second port (independent of whether first syndication was successful or failed).

Also, I found this in [Data Manager Reference Guide |http://help.sap.com/saphelp_nwmdm71/helpdata/en/4b/72b8aaa42301bae10000000a42189b/MDMDataManager71.pdf](Page no 313)

"The syndication step works on synchronous Basis, meaning the workflow will not progress until Syndication Task is completed"

So, i am not sure, but this all makes me feel that syndication tasks can not be executed parallel.

I will be happy if some one says my understanding is incorrect and provide solution to this. Lets wait for more comments

Regards,

Shiv

Former Member
0 Kudos

Hi Shiv

So, i am not sure, but this all makes me feel that syndication tasks can not be executed parallel.

Your understanding here is correct since we are using here the same table for syndication process so it will be executed in steps. I mean syndication 2 has to wait until the syndication 1 ends. But the thing is that even after syndication 1 completes syndication 2 is not going to place that's the issue here.

Please find solution which tells same thing in MDM import manager context.

Can I run two Import Managers at the same time?

Yes, several instances of the Import Manager can be open concurrently. The only existing limitation though is when actual importing process starts the tables involved in the importing process are locked for write access. So if two instances of the Import Manager import to different tables then no synchronization issue occurs. If they use the same table, then the instance getting access second has to wait until the first ends.

For more details, Please refer this below link:

http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/7dc6ba86-0501-0010-0b82-849437929...

@ Elizabeth: After Syndication 1, Have you checked after sometime whether syndication2 & so-on takes place or not. I feel that Syndication for syndication 2 , syndication 3 & syndication 4 should also occur after some time as they executed one by one not parallel so will take some time. Just check and revert with result whether your workflow gets completed after some time or not.

Note: Make sure that for all these Syndications outbound ports Processing Type = Manual in Console else syndication will not occur.

Regards,

Mandeep Saini

Former Member
0 Kudos

Hello Mandeep and Shiv,

Thanks for your inputs.

My concern here is that once My Syndication1 step Validation encounters a 'true' condition Synd1 step executes successfully, creates a file at the outbound->Ready POrt and my Worflow gets completed at that very instant; Even without checking that the Syndication steps 3 also needs to be executed after Synd1.

Is there a problem with the way I have designed my Workflow?

I have ensured that all the ports used have been set to Processing Type = Manual.

Kindly advice,

Thanks,

Elizabeth.

Former Member
0 Kudos

Hi Elizabeth,

It may be possible that problem is there in design.

Can you please tell me what validation 2 holds in your workflow ? Is it hold TRUE condition or not?

All the validations involved in your Branch step hold TRUE condition except Default of your Branch step which should only contain fail (False) Condition.

Regards,

Mandeep Saini

Former Member
0 Kudos

HI MAndeep,

I have 3 Validation written basd on three different fields (Each filed for a unique system).

Validation1 is IF(ERP= TRUE, TRUE,FALSE) -


The record has value TRUE in this field 'ERP'.

Validation2 is IF(ABC = TRUE, TRUE,FALSE) -


The record has value FALSE in this field 'ABC'.

Validation3 is IF(BI = TRUE, TRUE,FALSE) -


The record has value TRUE in this field 'BI'.

As said above Validation1 and Validation3 return 'True' output conditions; hence Syndication Step1 and Syndication Step3 are expected to be executed (sequentially atleast) before the Workflow is sset to status 'Complete'.

However, this does not happen, only the first true condition step i.e Syndicate step1 executes and the Workflow ends.

Any suggestions?

Thanks,

Elizabeth.

Former Member
0 Kudos

Hi Elizabeth,

Its sad to know that your problem still persists .

All i say now, try doing some RnD . I don't have MS visio installed else definitely give you more insight into this workflow.

I would suggest after validations put step Process and then syndicate. May it works.

Validation1 >Process1>Syndication1-->Stop1.

Validation2>Process2>Syndication2--->Stop2

Validation3>Process3->Syndication3-->Stop3

Validation(Default)->Process4>Syndication4-->Stop4

Also check when you run validation from data manager by right clicking on record Validations>Execute>Validation1,

are these working fine.

Hope this helps..

Regards,

Mandeep Saini

Former Member
0 Kudos

Hi Elizabeth

How are you creating the records in MDM? Are you using import manager and are you mapping the remote keys in the import map.This is one way we can map specific records meant for specific remote systems.

When we syndicate the records based on qualified range remote key will be generated as per the number range defined.

ON controlling the syndication please follow the steps suggested above.

You can also refer to below blog-

/people/ravi.kumar106/blog/2010/04/27/using-sap-mdm-for-number-generation

best regards

Ravi

Edited by: Ravi Kumar on Apr 29, 2010 6:10 AM

Former Member
0 Kudos

Hi Elizabeth,

First of all if you have field Remote System in MDM. Then you can filter records using free form search and save this search criteria in your syndication map which will send respective records as per remote system to target systems. Here You will create different syndication maps as per remote systems. In Map Properties tab, you will set property Remote Key override

= one Target system say A. lly create another map based on search criteria and set this property Remote Key override for another remote system say B. You can also use property Suppress Records without key if required which will not syndicate records if records has already syndicating.

You can also maintain your qualified range. I mean say you have 2 remote systems say A and B. So using MDM Console you will define Qualified range first for A. and again lly you will define Qualified range for B. Since you have set property Remote System Override = A and B. this syndication map will syndicate records to both target systems A and B. Here key value is not overwritten but will appended which will take care of respective records to their target systems.

After Syndication you will see that there are two rows in Edit key mappings with their remote systems A and B and respective key details.

Let me know if you are looking for something else.

Regards,

Mandeep Saini