Community email notifications are disrupted. While we are working to resolve, please check on your favorite boards regularly to keep up with your conversations and new topics.
We can use API to create new WTDocument, but we have a subtype under WTDocument, how can I create a subtype by API? Who could help me? Thanks in advanced.
Solved! Go to Solution.
@WhiteChen wrote:
We can use API to create new WTDocument, but we have a subtype under WTDocument, how can I create a subtype by API? Who could help me? Thanks in advanced.
I know of 2 ways to do this. Method 1 where you find the TypeDefinitionReference and set the doc type and method 2 by using the PersistableAdapter.
Method 1:
//find the TypeIdentifier
TypeIdentifier myCustomType = TypeHelper.getTypeIdentifier("WCTYPE|wt.doc.WTDocument|com.mydomain.Document.myCustom");
//cast to WCTypeIdentifier
WCTypeIdentifier myCustomWCType = (WCTypeIdentifier) myCustomType;
//find the TypeDefinitionReference
TypeDefinitionReference myCustomTDR = TypedUtilityServiceHelper.service.getTypeDefinitionReference(myCustomWCType.getTypename());
//create doc
WTDocument doc = WTDocument.newWTDocument();
//set the doc TypeDefinitionReference
doc.setTypeDefinitionReference(myCustomTDR);
Method 2:
//Use the PersistableAdapter
PersistableAdapter obj = new PersistableAdapter("com.mydomain.Document.myCustom", locale, new CreateOperationIdentifier());
@WhiteChen wrote:
We can use API to create new WTDocument, but we have a subtype under WTDocument, how can I create a subtype by API? Who could help me? Thanks in advanced.
I know of 2 ways to do this. Method 1 where you find the TypeDefinitionReference and set the doc type and method 2 by using the PersistableAdapter.
Method 1:
//find the TypeIdentifier
TypeIdentifier myCustomType = TypeHelper.getTypeIdentifier("WCTYPE|wt.doc.WTDocument|com.mydomain.Document.myCustom");
//cast to WCTypeIdentifier
WCTypeIdentifier myCustomWCType = (WCTypeIdentifier) myCustomType;
//find the TypeDefinitionReference
TypeDefinitionReference myCustomTDR = TypedUtilityServiceHelper.service.getTypeDefinitionReference(myCustomWCType.getTypename());
//create doc
WTDocument doc = WTDocument.newWTDocument();
//set the doc TypeDefinitionReference
doc.setTypeDefinitionReference(myCustomTDR);
Method 2:
//Use the PersistableAdapter
PersistableAdapter obj = new PersistableAdapter("com.mydomain.Document.myCustom", locale, new CreateOperationIdentifier());
Hi Randy,
Appreciate your answer, your code is worked for me. One more question, how can I fill up the attributes when the document is created? The cutomized attributes as picture show.
Thanks.
@WhiteChen wrote:
Hi Randy,
Appreciate your answer, your code is worked for me. One more question, how can I fill up the attributes when the document is created?
Check out this PTC article and keep in mind that LWCNormalizedObject has been replaced with PersistableAdapter