BP Choose From List became Blank, All users affected
Dear all:
I hope anyone had the similar problem before. Our BP list became blank and B1 has to be restarted from frozen state whenever any users select this function. All users are affected.
What can be the root cause of this?
Hope somebody could give solution soon.
Thanks in advance,
Gordon
Dear Gordon,
Please check the following :
1 ) whether there are lots of records for the Business Partners?
2) Whether in the form Settings some Grouping is being done which needs time to display.
Chances are for the second option. If you check by restore defaults for the Form Settings in Choose from List, it may work.
Regards,
Jitin Chawla
Similar Messages
-
[SBO 2005] Choose from list on User Table
Hi all,
I need an information from the developper that already tried the SDK of BO 2005.
Is it possible to create Choose from List on user tables ?
I looked at the WebEx, there is no restriction about it, but when I tried in the demo, I can't figure out how to do it.
Thanks for your help
SébastienThank for your input Edward:
I do have the sample, but it uses a system table (OCRD, Object Type=2)
It seems that it works for system object or UDO, but not for simple user table. Am I right ?
Sebastien -
Reagrding the choose from list using user tables
Hi
I need to link <b>the choose from List to my user defined table</b> and not to system tables.
for eg., i have created a table namely opp. Now i want to link choose from list to this table.
can anyone help me??
its very urgent...
thanks in advance
Leehi Adele
thanks for your concern.i have used this code
Dim OCFLS As SAPbouiCOM.ChooseFromListCollection
Dim OConds As SAPbouiCOM.Conditions
Dim OCond As SAPbouiCOM.Condition
OCFLS = OForm.ChooseFromLists
Dim OCFL As SAPbouiCOM.ChooseFromList
Dim OCPack As SAPbouiCOM.ChooseFromListCreationParams
OCPack = SBO_Application.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_ChooseFromListCreationParams)
OCPack.MultiSelection = False
OCPack.UniqueID = "CFL3"
OCPack.ObjectType = "OPRQ"
OCFL = OCFLS.Add(OCPack)
Catch ex As Exception
MsgBox(Err.Description())
End Try
<b>then i link the choose from list to the Button(choosefromlist) namely OLBut. the code is follws</b>
<b>ONewItem = OForm.Items.Item("67")
OLBut = ONewItem.Specific
OLBut.ChooseFromListUID = "CFL3"</b>
but this is not working.i.e when i click the choose from list button nothing it is showing.what mistake i have done?please help me
thanks in advance -
Choose From List used in UDO (B1 2004)
Hi,
in the presentation "Creating a UDO of document type.pps" (slide 53+55) provided with the SDK 2004 they use the Choose From List to select business partners and/or items in their UDO form when adding a new document. Does anyone know, how this has to be done? The sample, from the presentation is not provided in the sample codes.
Do I have to use an implementation DLL for my UDO to use this functionality?
My problem is, that it takes too long (about 5 times longer than with the system CFL) to get all items in my custom defined matrix.
thanks,
MarkusHi Markus,
You cannot use the built-in CFL in version 2004. It is only exposed from version 2005. The only suggestion is to look at optimizing your matrix. All CFLs in the system uses DB Datasources which makes populating the grid faster than using User data sources.
Hope it helps,
Adele -
Choose From List From a UDT in SAP Business One 2005 A
Hi All
How to develop a Choose From List from a <b>User Defined Table</b> (not from System Tables) in SAP Business One 2005 A.
I need the Choose From List should display the records stored in the UDT.
Any Idea ?
Thanks in Advance.
Regards.
Asutosh.Hi Asutosh,
You can add a CFL to a User Defined Object, not a simple User Defined Table.
In order to do it you only have to set the object type of the CFL to the code of your UDO.
Here you have a simple:
oCFLCPuo = SB1_App.CreateObject(SAPbouiCOM.BoCreatableObjectType.cot_ChooseFromListCreationParams)
oCFLCPuo.ObjectType = "MY_UDO_CODE"
oCFLCPuo.UniqueID = "UserObjectCFL"
oCFLuo = oForm.ChooseFromLists.Add(oCFLCPuo)
Hope it helps
Trinidad. -
Change data in existing "Choose from list" matrix
Hi,
in UI GUI->order form . When add a new order, hit "TAB" to select BP from existing list. I want to use my own sql to populate the BP list (currently the GUI defaults to return all customers).
Is there a way? I mean if I just want to change data in the matrix and let B1 continue to make the "Choose from list" form (form "10001") with my own new customer list. Set BubbleEvent = true will just re-read all cards after I query my result.
any help is appriciated!Hello,
I came across the same issue with the Items Choose from List on the Sales Order screen. It is possible to load your own Choose from List form and populate the matrix using recordset objects and userdatasources. The same logic could be applied to the BP Choose from List form. The following code displays the user form and matrix items - separate code is needed to handle the selection process on this form. There maybe a faster way of acheiving this using UDTs etc but it seems to work ok.
'When user presses Tab key in Item No. column.
If pVal.EventType = et_KEY_DOWN Then
If pVal.ItemUID = "38" And pVal.ColUID = "1" And _
pVal.Before_Action = True And pVal.CharPressed = vbKeyTab Then
'Load new Choose from List form.
'This is actually an exported and edited version of the SBO form.
LoadFromXML sIIS_ITEMLIST_XML
'Populate matrix with items returned from SQL query.
'Use recordset, arrays, userdatasources.
Set oRecordSet = oCmp.GetBusinessObject(BoRecordset)
sSql = "Select OITM.ItemCode, OITM.ItemName, OITM.OnHand FROM OITM " & _
"Where Upper(Left(OITM.ItemCode,2)) = 'B1'"
oRecordSet.DoQuery sSql
nRows = oRecordSet.RecordCount
If nRows <> 0 Then
'Array declarations.
Dim ItemCode(), ItemName(), OnHand()
ReDim ItemCode(nRows - 1)
ReDim ItemName(nRows - 1)
ReDim OnHand(nRows - 1)
'Add userdatasources to form.
oForm.DataSources.UserDataSources.Add "ItemCode", dt_LONG_TEXT, 20
oForm.DataSources.UserDataSources.Add "ItemName", dt_LONG_TEXT, 100
oForm.DataSources.UserDataSources.Add "OnHand", dt_LONG_NUMBER
i = 0
'Populate arrays from recordset.
Do While oRecordSet.EOF <> True
ItemCode(i) = oRecordSet.Fields.Item(0).Value
ItemName(i) = oRecordSet.Fields.Item(1).Value
OnHand(i) = oRecordSet.Fields.Item(2).Value
oRecordSet.MoveNext
i = i + 1
Loop
'Bind data fields to form items.
Set oMatrix = oForm.Items.Item("7").Specific
Set oColumn = oMatrix.Columns.Item("ItemCode")
oColumn.DataBind.SetBound True, "", "ItemCode"
Set oMatrix = oForm.Items.Item("7").Specific
Set oColumn = oMatrix.Columns.Item("ItemName")
oColumn.DataBind.SetBound True, "", "ItemName"
Set oMatrix = oForm.Items.Item("7").Specific
Set oColumn = oMatrix.Columns.Item("OnHand")
oColumn.DataBind.SetBound True, "", "OnHand"
'Get data from datasources.
Dim oUItemCode As SAPbouiCOM.UserDataSource
Dim oUItemName As SAPbouiCOM.UserDataSource
Dim oUOnHand As SAPbouiCOM.UserDataSource
Set oUItemCode = oForm.DataSources.UserDataSources.Item("ItemCode")
Set oUItemName = oForm.DataSources.UserDataSources.Item("ItemName")
Set oUOnHand = oForm.DataSources.UserDataSources.Item("OnHand")
oMatrix.Clear
'For each returned record in recordset then
'add row to matrix and populate it from
'userdatasource.
For i = 1 To nRows
oMatrix.AddRow
oUItemCode.Value = ItemCode(i - 1)
oUItemName.Value = ItemName(i - 1)
oUOnHand.Value = OnHand(i - 1)
oMatrix.SetLineData
Next i
End If
'Show form. This also sets focus to edittext field.
oForm.Visible = True
'Don't display standard SBO item list form.
BubbleEvent = False
End If
End If
Regards,
Andrew. -
Delete/Edit/Update CFL Conditions - Choose From List
Hi All,
I have a Choose From List of which the conditions are set depending on a ComboBox.Selected.Value
oCon.CondVal = comboboxBranch.Selected.Value
So the Conditions are set when the "OnAfterComboSelect" event is trigered.
How do I reset the Condition when the user "RESELECTS" another ValidValue on that ComboBox???
At the moment, on the Reselection on the Combobox, the CFL is returning EMPTY.....
ThanksHi Michael,
Thanks for the speedy reply. Its workin.
Here's my code for the adding/editing of the Conditions from within the an Event Handler if any1 needs it.
In the OnAfterFormLoad Event Handler:
Dim oCFLs As SAPbouiCOM.ChooseFromListCollection
Dim oCFL As SAPbouiCOM.ChooseFromList
Dim oCons As SAPbouiCOM.Conditions
Dim oCon As SAPbouiCOM.Condition
Dim oCFLCreationParams As SAPbouiCOM.ChooseFromListCreationParams
' Adding CFL3 for Line GL Account Name.
oCFLCreationParams.MultiSelection = False
oCFLCreationParams.ObjectType = "1"
oCFLCreationParams.UniqueID = "CFL3"
oCFL = oCFLs.Add(oCFLCreationParams)
In the 1st TabOrder Item's OnGotFocus Event Handler:
oColumn = oColumns.Item("AcctCode")
oColumn.ChooseFromListUID = "CFL3"
oColumn.ChooseFromListAlias = "FormatCode"
In the OnAfterComboSelect Event Handler:
oCFLs = form.ChooseFromLists
oCFL = oCFLs.Item("CFL3")
oCons = oCFL.GetConditions()
If oCons.Count = 0 Then
oCon = oCons.Add()
oCon.BracketOpenNum = 2
oCon.Alias = "GroupMask"
oCon.Operation = SAPbouiCOM.BoConditionOperation.co_EQUAL
oCon.CondVal = "7"
oCon.BracketCloseNum = 1
oCon.Relationship = BoConditionRelationship.cr_AND
oCon = oCons.Add()
oCon.BracketOpenNum = 1
oCon.Alias = "Postable"
oCon.Operation = BoConditionOperation.co_EQUAL
oCon.CondVal = "Y"
oCon.BracketCloseNum = 1
oCon.Relationship = BoConditionRelationship.cr_AND
oCon = oCons.Add()
oCon.BracketOpenNum = 1
oCon.Alias = "Segment_1"
oCon.Operation = BoConditionOperation.co_EQUAL
oCon.CondVal = comboboxBranch.Selected.Value
oCon.BracketCloseNum = 2
oCFL.SetConditions(oCons)
Else
oCon = oCons.Item(2)
oCon.CondVal = comboboxBranch.Selected.Value
oCFL.SetConditions(oCons)
End If -
Receipt From production number - Choose From List
Hi all,
How to filter the Receipt from production number only comes in choose from list. now i used object is 59. when i choose all value comes that means goods receipt, and receipt from production document numbers comes. I want only list out the Receipt from production Numbers only how to i restrict this.
Thanks & regards
B.SudhirHello
It is very hard to do the CFL, because the information, that is it a receipt from a production is stored on the line level, not on the head level
you can 2 choices
1. define a query which includes all the DocEntry related to the Receipt documents, and on form constuction you add them into the conditions of the CFL (it takes much time to build up the CFL)
2. Define FMS, and assign to your field. And when the user press the TAB key, you call the FMS.
Regards
János
We always done the 2nd method until the cfl was not implemented. -
FMS for Instock for a particular Warhouse in Item Choose From List
Dear Experts,
I have an requirement as such that there are e.g 5 warehouses in Item Master Data as A,B,C,D,E. Now while doing any marketing document when the user press tab in the Item No in the choose from list the Instock Column shows the Total Stock in all the warehouses. Means if Item No 123 has stock in Warehouse A - 2, Warehouse B - 3, Warehouse C - 0 so in the Instock Column it would show as the total of all the Warehouse which is 5 but if I want to show only for a particular Warehouse e.g A which is 2 how can I show it in the choose from list.
I have tried to create a UDF also in the Item Master Data and applied a formatted search as :
SELECT T0.OnHand FROM [dbo].[OITW] T0 WHERE T0.WhsCode = 'A' AND T0.ItemCode = $[$5.0.0]
and the udf seems to be working only in the Item Master Window and showing the A warehouse Stock as 2.
I also brought the Udf column in the choose from List of Items but here its not showing any value for the items as desired.
Can anyone please help and let me know what can be done to sort this issue.
Awaiting for a positive response.
Regards,
DepikaHello ..
Depending on the desired goal, another alternative would be to create a user field in marketing documents to detail.
Later in this field formatted user applies a search that brings the stock in the warehouse of the line detail.
This in Toerien argues that if the document you selected Store A, and in that store there is a stock of 10 units, this amount is what brings the document.
This considering that you can not see it in the select list of items
I hope it will help
Best regards, -
Removing Duplicates from a choose from list
Hi All,
I have a choose from list of obj 73 )Catalog Numbers (Table OSCN)
I also added conditions in the CFL that it only shows the Substitute for the CardType = 'S' (Supllier) Business Partners.
But I want to remove all the duplicate Substitutes from the CFL so that only distinct Catalog Numbers shows in the CFL.
// Adding 2 CFL, one for the button and one for the edit text.
oCFLCreationParams.MultiSelection = false;
oCFLCreationParams.ObjectType = "73";
oCFLCreationParams.UniqueID = "CFL1";
oCFL = oCFLs.Add(oCFLCreationParams);
//Adding Conditions to CFL1
oCons = oCFL.GetConditions();
oCon = oCons.Add();
oCon.Alias = "Substitute";
SAPbobsCOM.Recordset oSuppliers = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset);
oSuppliers.DoQuery("Select Distinct t1.Substitute From OSCN t1 Join OCRD t2 on t1.CardCode = t2.CardCode Where t2.CardType = 'S' Group By t1.Substitute");
oCon.Operation = SAPbouiCOM.BoConditionOperation.co_EQUAL;
while (!oSuppliers.EoF)
oCon.CondVal = oSuppliers.Fields.Item(0).Value.ToString();
oCon.Relationship = SAPbouiCOM.BoConditionRelationship.cr_OR;
oCon = oCons.Add();
oCon.Alias = "Substitute";
oCon.Operation = SAPbouiCOM.BoConditionOperation.co_EQUAL;
oSuppliers.MoveNext();
oCFL.SetConditions(oCons);
Please advise....
Kind Regards,
Brenden DraperHi Brenden,
what you are trying to archieve won't work. Simply because CFL is getting all row data from OSCN and ItemCode or CardCode can differ for a specific substitute.
For example.
ItemCode,CardCode,Substitute
ItemA,BP1,sub1
ItemA,BP2,sub1
Would be 2 resultlines both with sub1 as substitute.
SQL equivalent :
Select Distinct t0.* from oscn t0 inner join OCRD t1 on t0.CardCode = t1.CardCode where t1.CardType = 'S'
My advise would be to open a simple form with a grid and datatable bound.
Some lines of coding and you get all you need.
regards,
Maik -
Edit and text and choose from list
hello,
I am trying to create a form that resemle to the purchase order form.
In the purchase order form when we select the card code from the choose from list
the system fill all the fileds like the name docnum .. with relevant information.
i tried to do that by using the vent et_evaluate of the edit text bind with the Card code in my form.
The problem is that when i clik on the choose from list button the event is lanched and then the value of the card code is "" so i can't crate my queries to get the infomation like suplier name and ..
does any body have an answer?
This my code:
switch (pVal.ItemUID)
case "3":
_Form.Freeze(true);
try
string NumFournisseur =
((EditText) _Form.Items.Item("3").Specific).Value;
ArrayList DFournisseur =
new DB.PurchaseRequest(_SboCompany).
GetDetailsFournisseur(NumFournisseur);
EditText Textvar;
// remplir nom fournisseur et nom contact
Textvar = (EditText) _Form.Items.Item("2").Specific;
Textvar.String = DFournisseur[0].ToString();
Textvar = (EditText) _Form.Items.Item("4").Specific;
Textvar.String = DFournisseur[1].ToString();
// remplir les dates comptable , de livraiosn et du document
Textvar = (EditText) _Form.Items.Item("17").Specific;
Textvar.String = DateTime.Today.ToString();
Textvar = (EditText) _Form.Items.Item("19").Specific;
Textvar.String = DateTime.Today.ToString();
Textvar = (EditText) _Form.Items.Item("21").Specific;
Textvar.String = DateTime.Today.ToString();
// remplir devise partenaire et numéro document
((EditText) _Form.Items.Item("59").Specific).String =
new DB.PurchaseRequest(_SboCompany).GetCurrencyCode(
NumFournisseur);
_Form.Items.Item("59").Visible = true;
_Form.Items.Item("59").Enabled = false;
((ComboBox) _Form.Items.Item("10").Specific).Select(
"primary",
BoSearchKey.
psk_Index);
((EditText) _Form.Items.Item("11").Specific).String =
new DB.PurchaseRequest(_SboCompany).GetLastDocNum().
ToString();
((EditText) _Form.Items.Item("12").Specific).String = "0";
catch (Exception e)
Console.WriteLine(e.Message);
_Form.Freeze(false);
break;
break;
catch (Exception ex)
Console.Write(ex.Message);
break;Hey Achref,
You can use the event and code like this:
string vendCode = string.Empty;
SAPbouiCOM.IChooseFromListEvent oCFLEvento = (SAPbouiCOM.IChooseFromListEvent) pVal;
string sCFL_ID = oCFLEvento.ChooseFromListUID;
SAPbouiCOM.ChooseFromList oCFL = oVendorSourcingForm.ChooseFromLists.Item(sCFL_ID);
SAPbouiCOM.DataTable oDataTable = oCFLEvento.SelectedObjects;
if (oDataTable != null)
//get selected value from datatable
if (oDataTable.Rows.Count > 0)vendCode = oDataTable.GetValue(0, 0).ToString();
Also check out 17.ChooseFromList in the samples that you can download.
Hope that helps
Curtis -
Create choose from list in Report selection criteria
Hi all,
Is it possible to create a choose from list in UDF in a Report selection criteria ?
My issue is i just want to create a report using crystal report. In this report contain some parameter which the parameter choose from list value is come from a UDT. If the value come from OCRD or OITM , it's so easy to make. I just make Customer @From OCRD in parameter CR, then i just preview, it will make choose from list from business partner. But how about from UDT.
I have try to make it using Formatted search. So in SAP B1, i binded with formatted search in some parameter that i make it in CR. But there is some thing odd. if I make 2 different report with different parameter. The formatted search with binded in the first report, will also binded in the second report. And i don't want this happen.
How can i make it , the formatted search didn't binded in second report parameter, because the second report is totally different. ?
thanks in advance
regards
Jia shunHi Jia
Try this
@UDT
Code Alpha(8)
Name Alphe(30)
Fields etc
Define the parameter token as follows.
Season@SELECT DISTINCT T1.Code, T1.Name FROM OADM T0 CROSS JOIN "@UDT" T1
OADM only has one record so the join will return the right number of records.
Hope this helps
Rob -
Choose From List Cancel Button Throws Exception
Hi all,
When I click the "Cancel" Button on my CFL, I get an error....
EXCEPTION: Matrix__EBS_FRM_CRDCLM__64.OnAfterChooseFromList raised
No matching records found (ODBC -2028)
Any ideas???Hi
in your choose from list event add this condition
If Not pval.SelectedObjects Is Nothing Then
'write your code in this if condition
end if
hope it will help u.
Regards,
Mithun. -
Dear Experts,
i want to select Items in Sales Quotation Screen which is from Particular Group, I'm using following code
If pVal.EventType = SAPbouiCOM.BoEventTypes.et_CHOOSE_FROM_LIST And pVal.BeforeAction = True Then
If pVal.FormTye = "149" And pVal.ItemUID = "38" And (pVal.ColUID = "1" Or pVal.ColUID = "3") Then
Try
oForm = SBO_Application.Forms.ActiveForm
Dim oCFLEvento As SAPbouiCOM.IChooseFromListEvent = pVal
Dim sCFL_ID As String = oCFLEvento.ChooseFromListUID
Dim oCFL As SAPbouiCOM.ChooseFromList = Nothing
oCFL = oForm.ChooseFromLists.Item(sCFL_ID)
oCons = Nothing
oCon = Nothing
oCons = oCFL.GetConditions()
oCon = oCons.Add()
oCon.Alias = "ItmsGrpCod"
oCon.Operation = SAPbouiCOM.BoConditionOperation.co_EQUAL
oCon.CondVal = "100"
oCFL.SetConditions(oCons)
Catch ex As Exception
SBO_Application.MessageBox(ex.Message)
End Try
End If
End If
First time Its working fine. but i'm selecting the next time in next row or same row its not showing any item. it opens only empty Choose from list. what is the prblm
MathiThe problem is that when this event is called again, the Conditions object still has the conditions from the last call :
oConditions = oCFL.GetConditions(); // this has all the previous set conditions
So the conditions set before are also taken into consideration. What you need to do is :
oCFL.SetConditions(null);
oConditions = oCFL.GetConditions();
This way the Conditions object will be empty. There is no method to remove a Condition from a Conditions collection, so you have to make it null. -
I have a form build in Screen painter and i have added a Choose from list to that form. I have asocieted the CFL with a EdiText. It work perfectly in add mode, but i cannot open the CFL when the form is in find mode.(I cannot even see the button to press for oppening the CFL). Can someone help me?
I am in the phase of binding the edittext, comoboxes and other controls on my form. I want to search by parameters. For instance i want to find all the entrys from a business partener.
I would like to know if I can choose from a list of business partener when i am in a find mode using CFL .
My problem it is not when i click find button but when i complete the fields, how can i select a business partener from a list?
Maybe you are looking for
-
Hi, some loops are there but most are not? This happens sometimes and dont understand why? Thanks Rob
-
HI All, I have to display tick mark icon in one of the columns of ALV report. How can i do it. Please suggest me. Regards, Monika
-
Finder locks up when attempting to access files on external drive
HI all, I am experiencing a sinking feeling at the moment - I have been editing large amounts of video in a particular project and on recent captures I found I only had about 5gb left on my external Maxtor 300gb hard drive, which aborted the last cap
-
Poor Lightroom 5.7 Performance when using part repair tool
Hi Lightroom pros, I'm using Lightroom 5.7 for about half a year and are very happy with it. Unless I'm working on photos where I have to use the part repairt tool to much. I'm specialized in car photograpy and often have to remove dust from the cars
-
I Really want to put some music onto my iPad. I hate having to use my MP3 player while I am typing things on my iPad. I want to be able to do both on the same device. Some years ago, I put iTunes on to a Windows 7 computer and caused the computer to