This is my extension code for adding a field called test for creating a new ticket at portal user side. Unfortunately test field is not being displayed.
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.1">
<constants>
<constant id="RESPONSE_TICKET_SLT_QUERY" xsi:type="string" _delta="define"><![CDATA[SELECT SLT AS slt JOIN lnkSLAToSLT AS l1 ON l1.slt_id=slt.id JOIN SLA AS sla ON l1.sla_id=sla.id JOIN lnkCustomerContractToService AS l2 ON l2.sla_id=sla.id JOIN CustomerContract AS sc ON l2.customercontract_id=sc.id WHERE slt.metric = :metric AND l2.service_id = :this->service_id AND sc.org_id = :this->org_id AND slt.request_type = :request_type AND slt.priority = :this->priority]]></constant>
</constants>
<classes>
<class id="Ticket" _delta="define">
<parent>cmdbAbstractObject</parent>
<php_parent>
<name>_Ticket</name>
</php_parent></class></classes></itop_design>
<fields><fieldid="test"xsi:type="AttributeString"_delta="define"><sql>test</sql><default_value/><is_null_allowed>true</is_null_allowed></field></fields></class></classes><module_designs><module_designid="itop-portal"xsi:type="portal"><forms><formid="ticket-create-test"_delta="define"><class>Ticket</class><properties><navigation_rules><submit><default>go-to-open-requests</default></submit></navigation_rules></properties><fields/><twig><divclass="row"><divclass="col-sm-6"><divclass="form_field"data-field-id="service_id"data-field-flags="mandatory"></div></div><divclass="col-sm-6"><divclass="form_field"data-field-id="servicesubcategory_id"data-field-flags="mandatory"></div></div></div><divid="service_details_placeholder"></div><divclass="row"><divclass="col-sm-6"><divclass="form_field"data-field-id="impact"></div></div><divclass="col-sm-6"><divclass="form_field"data-field-id="urgency"></div></div></div><div><divclass="form_field"data-field-id="test"_delta="define"></div><divclass="form_field"data-field-id="title"></div><divclass="form_field"data-field-id="description"></div><divclass="form_field"data-field-id="contacts_list"></div></div></twig><modes><!-- mode id can among create / edit / view --><modeid="create"/></modes></form></forms></module_design></module_designs>
Not sure why you'd use "define" for the delta attribute on the ticket node. Just on the field would be enough.
You define a new form, but how should iTop know when to use this form? Aren't you just looking to redefine (so delta in the XML for the form definition of creating a new ticket = redefine) a new one?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This is my updated code and itop should use this form on creating a new ticket how to achieve it
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.1">
<constants>
<constant id="RESPONSE_TICKET_SLT_QUERY" xsi:type="string" _delta="define"><![CDATA[SELECT SLT AS slt JOIN lnkSLAToSLT AS l1 ON l1.slt_id=slt.id JOIN SLA AS sla ON l1.sla_id=sla.id JOIN lnkCustomerContractToService AS l2 ON l2.sla_id=sla.id JOIN CustomerContract AS sc ON l2.customercontract_id=sc.id WHERE slt.metric = :metric AND l2.service_id = :this->service_id AND sc.org_id = :this->org_id AND slt.request_type = :request_type AND slt.priority = :this->priority]]></constant>
</constants>
<classes>
<class id="Ticket" _delta="define">
<parent>cmdbAbstractObject</parent>
<php_parent>
<name>_Ticket</name>
</php_parent>
</class>
</classes></itop_design>
This is my extension code for adding a field called test for creating a new ticket at portal user side. Unfortunately test field is not being displayed.
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.1">
<constants>
<constant id="RESPONSE_TICKET_SLT_QUERY" xsi:type="string" _delta="define"><![CDATA[SELECT SLT AS slt JOIN lnkSLAToSLT AS l1 ON l1.slt_id=slt.id JOIN SLA AS sla ON l1.sla_id=sla.id JOIN lnkCustomerContractToService AS l2 ON l2.sla_id=sla.id JOIN CustomerContract AS sc ON l2.customercontract_id=sc.id WHERE slt.metric = :metric AND l2.service_id = :this->service_id AND sc.org_id = :this->org_id AND slt.request_type = :request_type AND slt.priority = :this->priority]]></constant>
</constants>
<classes>
<class id="Ticket" _delta="define">
<parent>cmdbAbstractObject</parent>
<php_parent>
<name>_Ticket</name>
</php_parent></class></classes></itop_design>
Not sure why you'd use "define" for the delta attribute on the ticket node. Just on the field would be enough.
You define a new form, but how should iTop know when to use this form? Aren't you just looking to redefine (so delta in the XML for the form definition of creating a new ticket = redefine) a new one?
This is my updated code and itop should use this form on creating a new ticket how to achieve it
<itop_design xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.1">
<constants>
<constant id="RESPONSE_TICKET_SLT_QUERY" xsi:type="string" _delta="define"><![CDATA[SELECT SLT AS slt JOIN lnkSLAToSLT AS l1 ON l1.slt_id=slt.id JOIN SLA AS sla ON l1.sla_id=sla.id JOIN lnkCustomerContractToService AS l2 ON l2.sla_id=sla.id JOIN CustomerContract AS sc ON l2.customercontract_id=sc.id WHERE slt.metric = :metric AND l2.service_id = :this->service_id AND sc.org_id = :this->org_id AND slt.request_type = :request_type AND slt.priority = :this->priority]]></constant>
</constants>
<classes>
<class id="Ticket" _delta="define">
<parent>cmdbAbstractObject</parent>
<php_parent>
<name>_Ticket</name>
</php_parent>
</class>
</classes></itop_design>
<module_designs>
<form id="ticket-create" _delta="redefine"><module_design id="itop-portal" xsi:type="portal">
<forms>
</forms></module_design></module_designs>
<class>Ticket</class>
<properties>
<navigation_rules>
<submit>
<default>go-to-open-requests</default>
</submit>
</navigation_rules>
</properties>
<fields>
<twig>
</twig>
<modes>
<mode id="create">
</mode></modes>
</fields></form>
Last edit: Mhamad Farhat 2023-12-27