cancel
Showing results for 
Search instead for 
Did you mean: 

Matrices on System Forms

Former Member
0 Kudos

When will we have the ability to add matrices to system forms?

I have been asked to produce an activity management system as a tab on the Sales Opportunity screen with ticklers/alerts tied to the alert management screen to notify staff when to revisit the oppportunity. This will be used to manage work associated with an opportunity both before and after the sale. They also want template activities to apply to this management tab. Therefore, I would like to create my own line-level data model and then implement the system with a matrix without having to recode all the functionality contained within and supporting the system Sales Opportunity screen.

Maybe there is an alternative way to consider doing this. Any ideas? Or, am I stuck....?

Scott

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

System forms are automanaged; so, you cannot apply this solution.

Former Member
0 Kudos

Florian, I resumed this project this week. I have added a matrix to a system form, which is tied to a UDT. The only problem I am having is with prepopulating the form's data. Currently, I am using the click event on the tab in which the system form has been placed to trigger population of the form.

This, however, is problematic in that I must save the data when I click on other folders so that row data addions and removals are not lost. This, in turn, causes the matrix to be out of sync with the form's mode (OK vs. Update) and the form mode to be set to Update when it should not (the matrix has been modified and then saved).

How are you handling these issues?

Former Member
0 Kudos

Hi Scott,

This will solve your problem, add it as the last line (after you populate your matrix)

<i>SBO_Application.Forms.ActiveForm.Mode = BoFormMode.fm_OK_MODE;</i>

It will put back your form in OK mode.

Former Member
0 Kudos

In my testing, I was unable to add a new matrix to a system form and, once I re-read the UI API documentation, resigned myself to this limitation. Maybe I shouldn't have? Can you help me better understand the limits to what I "am" capable of doing? This is a snippet from the UI API documentation ...

RESTRICTIONS ON SYSTEM FORMS

Form Object

Restricted properties and methods: DataBrowser,

SupportedModes, AutoManaged, EnableMenu and

ResetMenuStatus

Matrix Object

You cannot control the selection mode for system

Matrix object. The SelectionMode property will

always return ms_NotSupported.

Restricted methods SetLineData, SelectRow,

LoadFromDataSource, FlushToDataSource.

DBDataSource

You cannot access a DBDataSource used by a

system form. You can add a DBDataSource only if

the database table does not exist already in the

system form's DataSources collection.

Query method is not supported.

Folder, OptionBtn, Column, CheckBox Objects

You cannot change the value for ValOn/ValOff

properties.

Item Object

You cannot change AffectsFormMode, Enabled,

and Visible from False to True.

ValidValues Collection

You cannot add or remove values from the collection.

Columns Collection

You cannot add or remove a column from the

collection.

What were you able to do? Would you send me some code as an example? Thank you for your response!

Kind Regards,

Scott

Former Member
0 Kudos

This is a slightly changed part from one of my xml streams, it (should) add(s) a tab to a document form (1. on form load, replace the xmls form uid ("UID") with the one from the loaded form, 2. process the xml).

<?xml version="1.0" encoding="UTF-16"?>
<Application>
  <forms>
    <action type="update">
      <form uid="UID">
        <items>
          <action type="add">
            <Item description="" disp_desc="0" enabled="1" from_pane="0" height="20" 
                  left="140" linkto="" right_just="0" tab_order="1991" to_pane="0" 
                  top="40" type="99" uid="SLGTab" visible="1" width="50">
              <Specific caption="Test" AffectsFormMode="0" val_off="0" val_on="9"/>
            </Item>
          </action>
          <action type="group">
            <Item uid="138"/>
              <Item uid="SLGTab"/>
          </action>
        </items>
      </form>
    </action>
  </forms>
</Application>

This is possible using DI functions, too. At the beginning, I often forgot to group the tab with the other tabs (or with one other tab, the "138" on document forms), if so, you can't see any tab, even it's visible as a form item in your debugger. Did you group the tab with the others in your code?

Most of the time the restrictions consider system items only. With your own items (even on system forms) and your own datasources you should be able to do almost everything (I shouldn't make such general predictions, don't blame me if I'm wrong

Former Member
0 Kudos

> When will we have the ability to add matrices to

> system forms?

I'm doing that on the Sales Order form which is a system form, too. So I suppose you already are able to add a matrix to system forms.

> Therefore, I would like to create my

> own line-level data model and then implement the

> system with a matrix without having to recode all the

> functionality contained within and supporting the

> system Sales Opportunity screen.

That might be the part which needs some coding;)