Hello Doug,

Thanks for your explanation. Am I right to say that the instance ID of the 
AST:Attributes form should be the instance ID of the record in the BMC.ASSET 
dataset, and not the one of the record that creates the AST:Attribute if 
created from another dataset ? I guess that in case of a delete in the source 
dataset, but not in the BMC.ASSET dataset, the link on InstanceID between 
AST:Attribute and CI will be broken.

Best regards,

Jean-Louis Halleux
[email protected]



> On 08 Apr 2015, at 08:28, Mueller, Doug <[email protected]> wrote:
> 
> **
> Jean-Louis,
>  
> Well, it is linked with the reconciliation ID as the primary link.  As you 
> note, the reconciliation ID ties the lifecycle to all instances of the CI 
> across datasets.  This is the way things should work in the system and it is 
> one of the big improvements of moving the Asset data out of the CMDB.
>  
> However, it is also tied by instance ID.  When an instance is created by 
> loading to the AST join, records are created in the CMDB and in 
> AST:Attributes.  OK so far.  Now, there is no reconciliation ID at this 
> point.  So, how can the records be tied together?  By the Instance ID.  The 
> Instance ID on the AST:Attributes form is the instance ID of the record that 
> caused the AST:Attributes record to be created.  When that instance gets 
> reconciled (identity reconciled), the reconciliation ID is updated on that 
> record – found using the Instance ID.
>  
> So, you can see that it is critical that they match.  Otherwise, you could 
> not find the record to update it with the reconciliation ID.
>  
> Now, the fact that the AST:* joins are joined on the reconciliation ID is 
> good, but not really sufficient.  Why?  Because all is fine as long as a 
> reconciliation ID is present, but what about before the reconciliation 
> operation?  Well, the CI instance that created it and the AST:Attribute 
> record are joined by the instance ID.
>  
> So, the AST:* join criteria really should be that the reconciliation ID match 
> OR the instance ID match.  This gives you everything you get today PLUS you 
> get the CMDB and AST:Attributes records joined before the reconciliation 
> identity job has been run.  We are going to update this join criteria as the 
> standard in the next release.   (this fact of the link being by two different 
> things was noted by Jarl in his message to the list)
>  
> So, it is critical that the instance ID is put on the AST:Attributes record.  
> It is the way the reconciliation ID gets set on the AST:Attributes record and 
> it is going to be added to the join critieria to make the join work before 
> reconciliation in the future.
>  
> I hope this addresses your question,
>  
> Doug Mueller
>  
> From: Action Request System discussion list(ARSList) 
> [mailto:[email protected] <mailto:[email protected]>] On Behalf Of 
> Jean-Louis Halleux
> Sent: Tuesday, April 07, 2015 2:26 AM
> To: [email protected] <mailto:[email protected]>
> Subject: Re: Setting 'InstanceId' on AST:* submit?
>  
> ** 
> Hello Doug,
>  
> To my knowledge, the AST:Attribute is not linked to the CMDB record with its 
> InstanceID, but rather with its ReconciliationID (in Atrium 8.0 at least). 
> This has the effect that one AST:Attribute is related to multiple CI records 
> though different datasets. Of course, those multiple CI records do represent 
> only one physical CI in reality as the records are reconciled. However, I 
> feel a little awkward when I read " It is critical that the Instance ID in 
> the AST:Attribute record match the instance ID”, because you have different 
> instance IDs through different datasets, while only one AST:Attribute.
>  
> So my question: “why is it critical” ?
>  
> Thanks for your support.
>  
> Jean-Louis Halleux
> [email protected] <mailto:[email protected]>
>  
>  
>  
> On 01 Apr 2015, at 22:52, Mueller, Doug <[email protected] 
> <mailto:[email protected]>> wrote:
>  
> **
> Andy,
>  
> It is fine if you want to control the creation of an Instance ID on the CI 
> side.  It just needs to be a GUID.
>  
> However, it is not OK to just generate a new GUID for the AST:Attribute 
> record itself.  It is critical that the Instance ID in the AST:Attribute 
> record match the instance ID of a corresponding entry in the CMDB form.
>  
> In your case, you are loading to the AST:* join form that joins the CMDB form 
> and the AST:Attribute form.   Workflow there pushes appropriate values to 
> each of the two underlying forms along with the Instance ID field.  Whether 
> that field is generated by workflow or supplied by you, it shouldn’t matter  
> (OK, I am hedging by saying shouldn’t vs. doesn’t but I believe the logic in 
> the system doesn’t overwrite if you supply an instance ID – if it does, you 
> just need to overlay the filter that sets the instance ID to check to make 
> sure it isn’t already set).  From other responses, it has the logic handled 
> correctly.
>  
> Just make sure you don’t try and create an Instance ID on the fly for the 
> AST:Attribute form.  It must be supplied one that matches the CMDB record it 
> is tied to.
>  
> Doug Mueller
>  
> From: Action Request System discussion list(ARSList) 
> [mailto:[email protected] <mailto:[email protected]>] On Behalf Of Andrew 
> Hicox
> Sent: Wednesday, April 01, 2015 6:35 AM
> To: [email protected] <mailto:[email protected]>
> Subject: Setting 'InstanceId' on AST:* submit?
>  
> ** 
> Hi everyone, 
> I have a situatuon where some home grown workflow needs to create CI's.
> I'm doing this by pushing fields directly to the AST:* form corresponding to 
> the Class we want to create the CI in, and up to that point it works 
> flawlwssly.
> However, I need to pull the 'InstanceId' of the CI I just created back into 
> the form where the workflow fired the push fields (so I can set up 
> relationships, etc).
> Doing this reliably has become more of a headache than I'd imagined. There 
> are almost no uniqueness restraints in cmdb (sort of a corollary to Igor's 
> thread about unique indexes).
> So there's almost nothing I can search by other than 'InstanceId', that's 
> guaranteed to get 1 or 0 results. 
> so here's my question. What if I generate my own GUID and push it into 
> 'InstanceId' on the AST:* form?
> Does anyone know of this will break something in asset or cmdb? On the 
> surface, this seems like a legitimate thing to do, but just wondering if 
> anyone has been down this road before?
> 
> -Andy
> _ARSlist: "Where the Answers Are" and have been for 20 years_
> _ARSlist: "Where the Answers Are" and have been for 20 years_
>  
> <image001.jpg>_ARSlist: "Where the Answers Are" and have been for 20 years_
> _ARSlist: "Where the Answers Are" and have been for 20 years_


_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
"Where the Answers Are, and have been for 20 years"

Reply via email to