Expand my Community achievements bar.

Announcing the launch of new sub-community for Campaign Web UI to cater specifically to the needs of Campaign Web UI users!
SOLVED

xtk:form: use linkList without having a link in a schema?

Avatar

Level 3

I have a schema of an Object, let's call it cus:object. User can create an Object instance or modify existing one selected in folder using the Form cus:object.

There is also another schema - cus:provider - where the data of Providers (external systems) are stored.

Object and Provider has no logical links - they are not using each other in real world.

So cus:object and cus:provider don't have a link (<element type="link"... />) to each other also.

Provider is a piece of information obtained from a CSV file importing to AC on a daily basis - so if it was existing yesterday it might be deleted today and vice versa.

What I need right now is a button on the Object's form which will call the SOAP method and pass an array of Providers that user have selected. There is no need to store the combination of "Object-Provider" after.

I'm wondering if I can define something like a temporary schema inside cus:object form just to use linkList input, or, what might be better, - if I could create something like a subform using cus:provider as a schema and returning the selection to parent form as a /temp/selection xpath?

1 Accepted Solution

Avatar

Correct answer by
Level 4

Do you want to select multiple Providers per Object or only one?

You can specify a schema for your input component and have forms that are not technically linked with anything. This is an example from nms:delivery:

          <input img="nms:deliveryOutline.png" label="Select a delivery outline..."

                 nolabel="true" prebuildSubForm="false" type="subFormLink" xpath="deliveryOutline">

            <form label="Select a delivery outline" nothingToSave="true">

              <input img="nms:deliveryOutline.png" monoSelection="true" schema="nms:deliveryOutline"

                     toolbarCaption="List of delivery outlines" type="linkListChoice"

                     xpath="." xpathOut="/ignored/deliveryOutlineList">

                <input xpath="[.]"/>

                <sysFilter>

                  <condition expr="[@operation-id]=$(../@operation-id)"/>

                  <condition>

                    <condition boolOperator="OR" expr="@messageType=$(../@messageType)"/>

                    <condition expr="@messageType=127"/>

                  </condition>

                </sysFilter>

              </input>

              <leave>

                <set expr="[/ignored/deliveryOutlineList/deliveryOutline/@id]" xpath="@id"/>

                <set expr="[/ignored/deliveryOutlineList/deliveryOutline/@_cs]" xpath="@_cs"/>

                <set expr="[/ignored/deliveryOutlineList/deliveryOutline/@id]" xpath="../@deliveryOutline-id"/>

              </leave>

            </form>

          </input>

        </container>

is this what you searching?

View solution in original post

2 Replies

Avatar

Correct answer by
Level 4

Do you want to select multiple Providers per Object or only one?

You can specify a schema for your input component and have forms that are not technically linked with anything. This is an example from nms:delivery:

          <input img="nms:deliveryOutline.png" label="Select a delivery outline..."

                 nolabel="true" prebuildSubForm="false" type="subFormLink" xpath="deliveryOutline">

            <form label="Select a delivery outline" nothingToSave="true">

              <input img="nms:deliveryOutline.png" monoSelection="true" schema="nms:deliveryOutline"

                     toolbarCaption="List of delivery outlines" type="linkListChoice"

                     xpath="." xpathOut="/ignored/deliveryOutlineList">

                <input xpath="[.]"/>

                <sysFilter>

                  <condition expr="[@operation-id]=$(../@operation-id)"/>

                  <condition>

                    <condition boolOperator="OR" expr="@messageType=$(../@messageType)"/>

                    <condition expr="@messageType=127"/>

                  </condition>

                </sysFilter>

              </input>

              <leave>

                <set expr="[/ignored/deliveryOutlineList/deliveryOutline/@id]" xpath="@id"/>

                <set expr="[/ignored/deliveryOutlineList/deliveryOutline/@_cs]" xpath="@_cs"/>

                <set expr="[/ignored/deliveryOutlineList/deliveryOutline/@id]" xpath="../@deliveryOutline-id"/>

              </leave>

            </form>

          </input>

        </container>

is this what you searching?