Clarity

  • 1.  Ways to delete Custom Sub-object instances from Project

    Posted Jul 01, 2011 10:06 AM
    Hi,

    We have a Custom subobject of Project. There could be many instances of subobject under a project. We want to bulk delete those subobject instances from a project. I know ONLY legitimate way of deletion is through checking each instances and using "Delete" button in Clarity.

    My requirement is to delete those instances through some other approach. I took SQL trace and found that there are many tables involved (including process tables) so deleting those entries from a Oracle stored procedure is a way BUT it would not be supported and Good way, that is what I believe. Are there any other ways to achieve this ??:sad

    Thanks,
    Rahul


  • 2.  RE: Ways to delete Custom Sub-object instances from Project

    Posted Jul 03, 2011 11:15 AM
    Hi Rahul,

    You can try the action="delete" parameter in the custom object instance XML. It does work for custom object. I have not tried for sub-object, but it should work. The following is sample XML for version 8, that I used.

    <NikuDataBus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/nikuxog_customObjectInstance.xsd">
    <Header action="write" externalSource="NIKU" objectType="customObjectInstance" version="8.1.1.4445" />
    <customObjectInstances objectCode="rcm_control">
    <instance instanceCode="CONTROL00000075" objectCode="rcm_control" action="delete">
    <CustomInformation>
    <ColumnValue name="partition_code">NIKU.ROOT</ColumnValue>
    <ColumnValue name="name">testing2</ColumnValue>
    <ColumnValue name="code">00000083</ColumnValue>
    <ColumnValue name="odf_parent_id">5003049</ColumnValue>
    <ColumnValue name="odf_cncrt_parent_id">5003049</ColumnValue>
    <ColumnValue name="acx_old_controlname">0000008175 - Email Notifications</ColumnValue>
    <ColumnValue name="acx_cc_status">ACX_cc_implement</ColumnValue>
    <ColumnValue name="acx_cc_reason">again</ColumnValue>
    <ColumnValue name="acx_cc_requestowner">amsmit</ColumnValue>
    <ColumnValue name="acx_cc_changetype">acx_cc_changeCntrl</ColumnValue>
    <ColumnValue name="acx_rev_process">true</ColumnValue>
    </CustomInformation>
    </instance>
    </customObjectInstances>
    </NikuDataBus>

    Thanx
    Satish


  • 3.  RE: Ways to delete Custom Sub-object instances from Project

    Posted Oct 07, 2011 03:36 PM
    Ok. Perhaps I'm doing something wrong, but I can't get this method to work.

    I get an error message indicating that the delete action attribute is unexpected in that tag.

    Has anyone been successful using this method?
    <?xml version="1.0" encoding="UTF-8"?>
    <XOGOutput xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../xsd/status.xsd">
        <Object type="customObjectInstance"/>
        <Status state="FAILURE"/>
        <Statistics failureRecords="0" insertedRecords="0"
            totalNumberOfRecords="0" updatedRecords="0"/>
        <ErrorInformation>
            <Severity>FATAL</Severity>
            <Description>[Error] :0:0: unexpected attribute "action"
    </Description>
            <Exception type="java.lang.Exception"><![CDATA[
    java.lang.Exception: Invalid xml data
    
    at com.niku.xog.service.ObjectHandler.processRequest(ObjectHandler.java:115)
    
    at com.niku.xog.handler.XOGProcessHandler.postProcess(XOGProcessHandler.java:44)
    
    at com.niku.xql2.XQLVisitor.postProcess(XQLVisitor.java:1355)
    
    at com.niku.union.xml.dom.DOMWalker.postProcess(DOMWalker.java:210)
    
    at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:94)
    
    at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:92)
    
    at com.niku.union.xml.dom.DOMWalker.traverseIntern(DOMWalker.java:92)
    
    at com.niku.union.xml.dom.DOMWalker.traverse(DOMWalker.java:36)
    
    at com.niku.xql2.XQLProcessor.process(XQLProcessor.java:239)
    
    at com.niku.xql2.XQLProcessor.process(XQLProcessor.java:280)
    
    at com.niku.xql2.binding.ServiceControlBindingXql.processFile(ServiceControlBindingXql.java:412)
    
    at com.niku.xql2.binding.ServiceControlBindingXql.getDocument(ServiceControlBindingXql.java:277)
    
    at com.niku.xql2.binding.ServiceControlBindingXql.processRequest(ServiceControlBindingXql.java:161)
    
    at com.niku.union.service.ServiceControlImpl.processRequest(ServiceControlImpl.java:760)
    
    at com.niku.union.service.ServiceControlImpl.processRequest(ServiceControlImpl.java:214)
    
    at com.niku.union.web.WebServiceAdapter.processRequest(WebServiceAdapter.java:196)
    
    at com.niku.union.web.PortletController.processServiceRequest(PortletController.java:1371)
    
    at com.niku.union.web.PortletController.processAuthorizedPortlet(PortletController.java:891)
    
    at com.niku.union.web.PortletController.processPageActionRequest(PortletController.java:385)
    
    at com.niku.union.web.PortletController.processRequest(PortletController.java:160)
    
    at com.niku.union.web.WebActionController.processAction(WebActionController.java:1090)
    
    at com.niku.union.web.WebActionController.processRequest(WebActionController.java:170)
    
    at com.niku.union.web.WebControlServlet.service(WebControlServlet.java:322)
    
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
    
    at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
    
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    
    at com.niku.union.web.filter.GZIPResponseFilter.doFilter(GZIPResponseFilter.java:121)
    
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3496)
    
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
    
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
    
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
    
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    ]]></Exception>
        </ErrorInformation>
    </XOGOutput>


  • 4.  RE: Ways to delete Custom Sub-object instances from Project

    Posted Oct 07, 2011 04:17 PM
    I don't see the action attribute in the xml files that come with the XOG client.
    Neither can I version 8.1.1 in any of the files I have.


    Where does the sample come from?

    Martti K.


  • 5.  RE: Ways to delete Custom Sub-object instances from Project

    Posted Oct 10, 2011 03:45 AM
    I also tried using this long back....but was not successful. This shows the same error.

    Thanks,
    Rahul


  • 6.  RE: Ways to delete Custom Sub-object instances from Project

    Posted Oct 10, 2011 11:40 AM
    Hi Rahul,
    Did you try the Completed flag with the XML.

    Thanks,
    Manish


  • 7.  RE: Ways to delete Custom Sub-object instances from Project

    Posted Oct 10, 2011 10:21 AM
    Did you try the Completed flag with the XML.
    Manish,

    Can you provide some additional detail around what you're asking?

    Thanks.