Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In entities metadata file: <segmentincluded> tag's value must be set to true. Keep in mind that <segmentincluded> default value is false.

Ui expand
titleRestricted Entities
Code Block
languagexml
titleentities.xml
collapsetrue
<entities>
	<entity>
		<id>CUSTOMRENTALS</id>
		<name>key_rental</name>
		<tablename>TRN_RENTALS</tablename>
		<classname>com.crm.dataobject.rentals.CUSTOMCRMDORental</classname>
		<moduleid>CUSTOM_RENTALS</moduleid>
		<metadatafile>rentals</metadatafile>
		<segmentincluded>true</segmentincluded>
	</entity>
	...
</entities>

 

Type, Status and Life Cycle State options are built based on the values of type, status and state entities defined by <typeentityid>, <statusentityid> and <stateentityid> tags 

Image Removed

...

Image Added

2. Fields Metadata file

In fields metadata file, <csrexcluded> :

  1.  <qlfieldname> tag's value is the CRMQL field name and must be

...

  1. defined for the fields that you want to be available

...

  1. as segment criteria.
  2. <segmentpreviewname> tag's value must be defined for the fields that you want  to be displayed when previewing a segment. Valid values are ENTITYNUMBER, ENTITYNAME, ENTITYALTCODE, ENTITYDESC and are used when you want the field to be displayed as the entity's number, name, alternative code or description accordingly.
Ui expand
titleRestricted Fields
Ui expand
titleRestricted Processes and Printouts
Code Block
languagexml
titleentities.xml
collapsetrue
<mainfield><entityfieldconfig>
	<<mainfield>
		<id>custom_number</id>
		<name>key_number</name>
		<xpath>number</xpath>
		<csrexcluded>true<<qlfieldname>rental.number</csrexcluded>qlfieldname>
	<plarexcluded>true</plarexcluded>
	<acrexcluded>true<<segmentpreviewname>ENTITYNUMBER</acrexcluded>segmentpreviewname>
	<audittrailexcluded>true</audittrailexcluded>
</mainfield>
	<fields>
		<field>
			<id>custom_type</id>
			<name>key_type</name>
			<relatedentityxpath>type</relatedentityxpath>
			<xpath>name</xpath>
			<qlfieldname>rental.type.name</qlfieldname>
		</field>
		<field>
			<id>custom_type_alt_code</id>
			<name>key_type_alt_code</name>
			<relatedentityxpath>type</relatedentityxpath>
			<xpath>altCode</xpath>
			<csrexcluded>true</csrexcluded>
			<plarexcluded>true</plarexcluded>
			<acrexcluded>true</acrexcluded>
			<audittrailexcluded>true</audittrailexcluded>
			<qlfieldname>rental.type.alternative_code</qlfieldname>
		</field>
		<field>
			<id>custom_account</id>
			<name>key_account</name>
			<relatedentityxpath>accountReceivable</relatedentityxpath>
			<xpath>name</xpath>
			<qlfieldname>rental.accounts_receivable.name</qlfieldname>
		</field>
		<field>
			<id>custom_state</id>
			<name>key_state</name>
			<xpath>state</xpath>
			<qlfieldname>rental.state</qlfieldname>
		</field>
		<field>
			<id>custom_effective_date</id>
			<name>key_effective_date</name>
			<xpath>effectiveDate</xpath>
			</field>
	...
</fields>
<collections><qlfieldname>rental.effective_date</qlfieldname>
		</field>
		<collection><field>
			<id>custom_items<expiration_date</id>
			<name>key_items<expiration_date</name>
			<relatedentityxpath<xpath>expirationDate</>xpath>
			<xpath>items</xpath><qlfieldname>rental.expiration_date</qlfieldname>
			<csrexcluded>false<</csrexcluded>field>
		
		<plarexcluded>true</plarexcluded><field>
			<acrexcluded>true<<id>custom_notes</acrexcluded>id>
			<method><name>key_notes</name>
				<ejbname>CUSTOMCRMUIRental<<xpath>sharedNotes</ejbname>xpath>
				<methodname>loadItemsTab<</methodname>field>
		
		<parameters><field>
					<parameter><id>custom_createdByUser</id>
			<name>key_created_by_user</name>
			<xpath>[DTO]</xpath><relatedentityxpath>createdByUser</relatedentityxpath>
					<<xpath>username</parameter>xpath>
				<<audittrailexcluded>true</parameters>audittrailexcluded>
			</method>field>
			<mainfield><field>
				<id>custom_serialNumber<updatedByUser</id>
				<name>key_updated_serialNumber<by_user</name>
				<relatedentityxpath>installedItem<<relatedentityxpath>updatedByUser</relatedentityxpath>
				<xpath>serialNumber<<xpath>username</xpath>
				<audittrailexcluded>true</audittrailexcluded>
			</mainfield>field>
			<fields>
				<field>
					<id>custom_code<createdByUnit</id>
					<name>key_created_productby_code<unit</name>
					<relatedentityxpath>installedItem<<relatedentityxpath>createdByUnit</relatedentityxpath>
					<xpath>product/code<<xpath>name</xpath>
					<audittrailexcluded>true</audittrailexcluded>
				</field>
				<field>
					<id>custom_type<updatedByUnit</id>
					<name>key_updated_productby_type<unit</name>
					<relatedentityxpath>installedItem<<relatedentityxpath>updatedByUnit</relatedentityxpath>
					<xpath>product/type/name</<xpath>name</xpath>
					<audittrailexcluded>true</audittrailexcluded>
				</field>
		</fields>
	</collection>
</collections>
 

 

Image Removed

 

4. Modules Metadata File

In modules metadata file, define all the processes, common and additional, and printouts you want to be available for conditional security restriction under any feature of your entity's module.

Code Block
titlemodules.xml
collapsetrue
<moduleconfig>
	<modules>
		<module>
			<moduleid>CUSTOM_RENTALS</moduleid>
			...
			<features>
				<feature>
					<featureid>CUSTOM_MANAGE_RENTALS</featureid>
					....
					<commonprocesses>
						<process>
							<id>CUSTOM_CREATE_RENTAL</id>
							<name>key_create_rental</name>
							<description>key_create_a_new_rental</description>
							<methods>
								<method>
					<field>
			<id>custom_createdDate</id>
			<name>key_created_date</name>
			<xpath>createdDate</xpath>
			<audittrailexcluded>true</audittrailexcluded>
		</field>
		<field>
			<id>custom_updatedDate</id>
			<name>key_updated_date</name>
			<xpath>updatedDate</xpath>
			<audittrailexcluded>true</audittrailexcluded>
		</field>
	</fields>
		
	<collections>
		<collection>
			<id>custom_items</id>
			<name>key_items</name>
			<relatedentityxpath/>
			<xpath>items</xpath>
			<qlfieldname>rental.items</qlfieldname>
			<method>
				<ejbname>CUSTOMCRMUIRental</ejbname>
									<methodname>createButton<<methodname>loadItemsTab</methodname>
				<parameters>
					</method><parameter>
							<xpath>[DTO]</methods>xpath>
						</process>parameter>
						...
		</parameters>
			</commonprocesses>method>
					<additionalprocesses><mainfield>
						<process>
							<id>CUSTOM_SET_RENTAL_AS_EFFECTIVE<<id>custom_serialNumber</id>
							<name>key_set_rental_as_effective<serialNumber</name>
				<relatedentityxpath>installedItem</relatedentityxpath>
				<description>key_set_rental_as_effective</description><xpath>altCode</xpath>
				<qlfieldname>rental.items.serial_number</qlfieldname>
			<methods></mainfield>
			<fields>
				<field>
	<method>
				<id>custom_code</id>
					<ejbname>CUSTOMCRMUIRental</ejbname><name>key_product_code</name>
									<methodname>setAsEffective</methodname><relatedentityxpath>installedItem</relatedentityxpath>
								</method><xpath>product/code</xpath>
							</methods>
	<qlfieldname>rental.items.product_code</qlfieldname>
					</process>
field>
						...
<field>
					<<id>custom_type</additionalprocesses>id>
					<printouts><name>key_product_type</name>
					<<relatedentityxpath>installedItem</printouts>relatedentityxpath>
				</feature>
	<xpath>product/type/name</xpath>
					<qlfieldname>rental.items..product_type</qlfieldname>
				</features>field>
			</module>fields>
		...</collection>
	</modules>collections>
</moduleconfig>							

 

Image Removed

 

 

...

entityfieldconfig>

Image Added

Image Added