Lager in Verkaufsbelegen abhängig vom Benutzer ändern

Manuel Kuebler

Ich möchte die Spalte "Lager" in den Verkaufsbelegen ändern. Jeder Benutzer hat ein bestimmtes Lager hinterlegt. Nach dem Auswählen eines Artikels soll das Lager des aktuellen Benutzers in die Spalte "Lager" eingetragen werden. In der coresuiteDebugLog steht folgende Fehlermeldung "Item - Form item is not editable".


System.Collections.Generic.Dictionary<string, string> locObjDictionaryUserWarehouseMapping = null;

locObjDictionaryUserWarehouseMapping = new System.Collections.Generic.Dictionary<string, string>();
locObjDictionaryUserWarehouseMapping.Add("manager", "02");

Matrix locObjMatrix = null;
string locStrCardCode = string.Empty;
string locStrUsername = string.Empty;

// Benutzername abfragen
locStrUsername = customize.B1Connector.GetB1Connector().Company.UserName;

// Kundennummer abfragen
locStrCardCode = TextEdit.GetFromUID(pVal.Form, "4").Value;

//MessageBox.Show(string.Format("Kunde: {0}", locStrCardCode), "OK");
//MessageBox.Show(string.Format("Benutzer: {0}", locStrUsername), "OK");
//MessageBox.Show(string.Format("Zeile: {0}", pVal.Row), "OK");

// Prüfen auf die richtige Kundennummer
if (locStrCardCode == "1989")

locObjMatrix = Matrix.GetFromUID(pVal.Form, "38");

// Spalte editierbar setzen
locObjMatrix.Columns["24"].Editable = true;

//pVal.Form.DataTables["ODLN"].SetValue("WhsCode", pVal.Row, "02");

// Prüfen ob der Benutzer in der Mapping-Tabelle steht
if (locObjDictionaryUserWarehouseMapping.ContainsKey(locStrUsername))

// Lager aus der Mapping-Tabelle anhand des Benutzernamens lesen und in die Zeile schreiben
locObjMatrix.SetValue("24", pVal.Row, locObjDictionaryUserWarehouseMapping[locStrUsername].ToString());
locObjMatrix.Columns["24"].Editable = false;



return true;

SAP Business One 8.82 & 9.0

coresuite 4.35

Paolo Manfrin

Hi Manuel,

are the lines open? Can you do the operation via UI "manually"? Please note that if this is not possible manually it will not be allowed as well programmatically.



Manuel Kuebler

I can edit the matrix manually. Programmatically I get the error message "Item - Form item is not editable".




Please sign in to leave a comment.

Didn't find what you were looking for?

New post