Dynamic List Items in Order Entry Customization

Thanks Mark. Unfortunately neither of those worked. I’ll keep messing with it…

I find it odd that LongDesc is a valid column, but CodeDesc isn’t.

Add CodeDesc to the EpiHiddenColumnsAppend property so that it is included in the returned data :slight_smile:
http://jcg.pictures/gdgfajhi4sEja.png

It’s in there.

Also add it to the EpiColumns Property…

Both LineDesc and CodeDesc are in the EpiColumns property.

Here’s the error I’m getting:

image

Now before I go any further let me give you ALL the info since I might have changed a few things from the time I posted my earlier question -

Original Sales Cat Field data:

Now the Sales Sub Category Field:

  • Bound to OrderDtl.SalesSubCatID_c
  • BO = UserCodes
  • EpiColumns = LongDesc and CodeDesc
  • EpiHiddenColumns = CodeDesc
  • EpiFiltersAppend = CodeDesc = '?[SalesCatID, 0]'
    Anything else can be seen here:

I cannot figure out how or why “LongDesc” is a valid column and “CodeDesc” isn’t… It doesn’t make much sense to me at all… Any ideas?

Bump ^^ - Any help would be appreciated.

Just a thought, I’m not an expert, but try replacing
EpiFiltersAppend = CodeDesc = ‘?[SalesCatID, 0]’
with
EpiFilters = CodeDesc=’?[SalesCatID,’’]’

Sorry Caleb,
Was on Vacation I’ll take a look tomorrow.

No problem at all Jose.

I’ll be looking forward to it

Do you think this is possible to do?

Right now I have the Sales Sub Cat user codes like this - image (description = SalesCat)

Sales Cat user codes -
image

Hello Caleb,

Solution is here follow following steps.

  1. Add a child table to Sales Category for Sub Category(design a sheet based on your input.)
    2 Insert Sub Category Combo Box(EpicCombo) on order Screen.
    3 Get Values after Field Change Event of Sales Category and Pass to your Child UD adapter and bind datasource to your Custom Epic Combo.

Let me know if you need source code of this solution.

Thanks
Surendra Pal

Caleb,
Finally got it, what a pain! So the reason you can’t use the CodeDesc is because the whereClause is passed to the CodeHeader table not the CodeList table. So that field doesn’t exist. However I found a work around with the same principle.
Remove the filters on the SubCategoryDropDown (so they all show). Still return your LongDesc, CodeDesc and CodeID as previous

This time use the Wizards -> Event Wizard-> Before DropDown Event on your SubCat Combo

the following 3 lines of code will add a dynamic filter to the SubCatCombo based on the SelectedValue of the SalesCombo. Note I used the EpiDataView CAllContextBPMData you’ll have to change it to whatever DataView you are binding your combo to.

private void epiComboC2_BeforeDropDown(object sender, System.ComponentModel.CancelEventArgs args)
	{
		// ** Place Event Handling Code Here **
		EpiDataView edv = oTrans.Factory("CallContextBpmData");
		epiComboC2.Rows.ColumnFilters["CodeDesc"].FilterConditions.Clear();
		epiComboC2.Rows.ColumnFilters["CodeDesc"].FilterConditions.Add(Infragistics.Win.UltraWinGrid.FilterComparisionOperator.Contains,(string)edv.dataView[edv.Row]["Character01"]);
	}

image

Works great

4 Likes

This worked 100%!
Thank you so much Jose, I really appreciate you taking the time to figure out why it wasn’t working, and then coming up with a work-around/solution.
Here’s a preview of how I set it up: (Order Entry Screen)

2 Likes

Glad it worked out :slight_smile: sorry it took so long to get it I’ve been slammed

No need for an apology!

But I do have a few extra questions regarding this topic…

How can I set the epiCombo to act like the default combos, so that if an order line is closed it will be read only? Example pic -
image
That’s how it is right now, it’s not a huge deal - but it’d be less confusing if it acted the same way as the other fields.

Also, is there a way to make it so multiple Sales Categories will show the same Sales Sub categories? What I mean by that, if I select NFL then it will show me the NFL sub categories, but if I select NFLP, then it won’t show anything. How can I get it so both categories will be able to select the same sub categories? Is it as simple as adding more to the CodeDesc on the SalesSubCat User Code?

It should be bound to a field on the EpiDataView no? That should by default make it ready only. Isn’t it bound to field OrderDtl.SubCategory?

Yea that’s what I thought - it is bound to OrderDtl.SalesSubCatID_c but for some reason it doesn’t act like it…

That’s strange… maybe a UI glitch try clearing your cache… If it still wo’nt do it you may have to modify the ExtendedProperties but there’s no magic there… it should just work.

When I open Order Entry and goto the Lines tab it will show as greyed out, just like all the other fields - but if I open an order with closed lines it won’t be greyed out.

Strange indeed…

I’m going to try adding a tilde inbetween Sales Categories in the SubCat User Codes and see if it’s that simple (probably won’t work)