Materialstücklisten abrufen 
From Theobald Software
Diese Beispiel zeigt, wie man die Komponenten einer Materialstückliste abruft. Dabei kommt der Baustein CSAP_MAT_BOM_READ zum Einsatz.
Um Materialstücklisten zu ändern, nutzen Sie bitte die Bausteine CSAP_MAT_BOM_OPEN, CSAP_MAT_BOM_MAINTAIN und CSAP_MAT_BOM_CLOSE.
Zur Neuanlage kann CSAP_MAT_BOM_ALLOC_CREATE und CSAP_MAT_BOM_CREATE verwendet werden.
R3Connection con = new R3Connection("hamlet", 11, "XXX", "XXX", "EN", "800"); con.Open(); //Create function RFCFunction func = con.CreateFunction("CSAP_MAT_BOM_READ"); func.Exports["MATERIAL"].ParamValue = "100-100"; // Material func.Exports["PLANT"].ParamValue = "1000"; // Plant func.Exports["BOM_USAGE"].ParamValue = "1"; // Usage -> 1 = Production // Execute func.Execute(); // reading header if (func.Tables["T_STKO"].Rows.Count > 0) { // print out BOM header RFCStructure header = func.Tables["T_STKO"].Rows[0]; Console.WriteLine("Base Quantity: " + header["BASE_QUAN"].ToString() + " " + header["BASE_UNIT"].ToString() + "\r\n"); Console.WriteLine("Items:\r\n"); // print out COmponent, Quantity, Text foreach (RFCStructure itemrow in func.Tables["T_STPO"].Rows) { Console.WriteLine(itemrow["COMPONENT"].ToString() + " " + itemrow["COMP_QTY"].ToString() + " " + itemrow["ITEM_TEXT1"].ToString()); } } else { Console.WriteLine("No BOM found"); } Console.WriteLine("Ready"); Console.ReadLine();


