// constructor public U2DictReader(UniSession uSession, string fileName) { _uSession = uSession; try { uFile = _uSession.CreateUniDictionary(fileName); usl = _uSession.CreateUniSelectList(0); usl.Select(uFile); string[] keys = usl.ReadListAsStringArray(); _uds = uFile.ReadRecords(keys); } catch (UniSessionException e) // unisession file not exists { if (e.ErrorCode == 14002) { Console.WriteLine("U2 file not found"); } else { // dont know, so rethrow throw; } } }
// constructor public U2DataReader(UniSession uSession, string fileName) { _uSession = uSession; try { uFile = _uSession.CreateUniFile(fileName); UniCommand uCmd = _uSession.CreateUniCommand(); uCmd.Command = string.Format("SELECT {0} BY @ID SAMPLED 100", uFile.FileName); uCmd.Execute(); usl = _uSession.CreateUniSelectList(0); _keySample = usl.ReadListAsStringArray(); RecordsAffected = 0; } catch (UniSessionException e) // unisession file not exists { if (e.ErrorCode == 14002) { Console.WriteLine("U2 file not found"); } else { // dont know, so rethrow throw; } } }
public Boolean connect(string host, String user, String path, String pass, String service, ref String errText) { if (service == String.Empty) { service = "uvcs"; } conn = new U2Connection(); U2ConnectionStringBuilder connBuilder = new U2ConnectionStringBuilder(); connBuilder.Server = host; connBuilder.UserID = user; connBuilder.Password = pass; connBuilder.Database = path; connBuilder.ServerType = "UNIVERSE"; connBuilder.AccessMode = "Native"; // FOR UO connBuilder.RpcServiceType = service; // FOR UO connBuilder.Pooling = false; try { conn.ConnectionString = connBuilder.ToString(); conn.Open(); _sess = conn.UniSession; } catch (Exception ex) { _sess = null; errText = ex.Message; return(false); } return(true); }
private void ExecuteCommand(U2Connection con) { try { if (settings.AccessMode == "Native") { // Native mode UniSession us1 = con.UniSession; UniCommand uniCmd = us1.CreateUniCommand(); uniCmd.Command = settings.CommandText; uniCmd.Execute(); // Get response string but not output string strNative = uniCmd.Response; } else { // SQL mode U2Command cmd = con.CreateCommand(); cmd.Connection = con; cmd.CommandText = settings.CommandText; cmd.ExecuteNonQuery(); } } catch (System.Exception ex) { throw ex; } finally { } }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "demo"; conn_str.ServerType = "UNIDATA"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "udcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); // get RECID UniSession us1 = con.UniSession; UniSelectList sl = us1.CreateUniSelectList(2); // Select UniFile UniFile fl = us1.CreateUniFile("STUDENT"); sl.Select(fl); bool lLastRecord = sl.LastRecordRead; while (!lLastRecord) { string s2 = sl.Next(); Console.WriteLine("Record ID:" + s2); lLastRecord = sl.LastRecordRead; } con.Close(); } catch (Exception e) { string s = e.Message; if (e.InnerException != null) { s += e.InnerException.Message; } Console.WriteLine(s); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "HS.SALES"; conn_str.ServerType = "UNIVERSE"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "uvcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); // get RECID UniSession us1 = con.UniSession; UniSelectList sl = us1.CreateUniSelectList(2); // Select UniFile UniFile fl = us1.CreateUniFile("CUSTOMER"); sl.Select(fl); bool lLastRecord = sl.LastRecordRead; List <string> lRecIdList = new List <string>(); while (!lLastRecord) { string sRecID = sl.Next(); lRecIdList.Add(sRecID); Console.WriteLine("Record ID:" + sRecID); lLastRecord = sl.LastRecordRead; } UniDataSet uSet = fl.ReadRecords(lRecIdList.ToArray()); // use for each statement to print the record foreach (UniRecord item in uSet) { Console.WriteLine(item.ToString()); } con.Close(); } catch (Exception e) { Console.WriteLine(e.Message); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }
public void disconnect() { if (conn != null) { conn.Close(); conn = null; _sess = null; } }
private static CssCommandResult MakeMultiNote(AccountList list, Note note, CssCredentials cssCredentials) { var result = new CssCommandResult(); var lHostName = _cssHostname ?? cssCredentials.Hostname; var lAccount = _cssAccount ?? cssCredentials.Account; var lUser = _cssUserName ?? cssCredentials.User; var lPassword = _cssUserPassword ?? cssCredentials.UserPassword; const string lServiceType = CssServiceType; UniSession us = null; try { Console.WriteLine($"{lHostName}, {lUser}, {lAccount}, {lServiceType}"); us = UniObjects.OpenSession(lHostName, lUser, lPassword, lAccount, lServiceType); UniCommand cmd = us.CreateUniCommand(); cmd.Command = $"GET-LIST {list.AccountListName}"; cmd.Execute(); cmd.Command = "MULTI.NOTES"; cmd.Execute(); cmd.Reply($"{note.Message}"); cmd.Reply("AGHERRERA"); cmd.Reply("G"); int lineNumber = 0; foreach (var line in cmd.Response.Split("\r\n")) { result.Results.Add(new CommandResponse($"Response Line: {++lineNumber}", line)); } return(result); } catch (Exception ex) { result.Results.Add(new CommandResponse("Exception", ex.ToString())); } finally { if (us != null && us.IsActive) { UniObjects.CloseSession(us); } } result.Results.Add(new CommandResponse("Error", "There was an error procesing your request.")); return(result); }
private static CssCommandResult Filter(string indexFile, string developerCode, string filterCriteria, AccountList saveListName, CssCredentials cssCredentials) { var result = new CssCommandResult(); var lHostName = _cssHostname ?? cssCredentials.Hostname; var lAccount = _cssAccount ?? cssCredentials.Account; var lUser = _cssUserName ?? cssCredentials.User; var lPassword = _cssUserPassword ?? cssCredentials.UserPassword; const string lServiceType = CssServiceType; UniSession us = null; try { Console.WriteLine($"{lHostName}, {lUser}, {lAccount}, {lServiceType}"); //get the session object us = UniObjects.OpenSession(lHostName, lUser, lPassword, lAccount, lServiceType); UniCommand cmd = us.CreateUniCommand(); cmd.Command = $"SELECT {indexFile} WITH DEV.CODE = \"{developerCode}\""; cmd.Execute(); result.Results.Add(new CommandResponse(cmd.Command, cmd.Response)); cmd.Command = $"QSELECT {indexFile}"; cmd.Execute(); result.Results.Add(new CommandResponse(cmd.Command, cmd.Response)); cmd.Command = filterCriteria; cmd.Execute(); result.Results.Add(new CommandResponse(cmd.Command, cmd.Response)); cmd.Command = $"SAVE-LIST {saveListName}"; cmd.Execute(); result.Results.Add(new CommandResponse(cmd.Command, cmd.Response)); return result; } catch (Exception ex) { result.Results.Add(new CommandResponse("Exception", ex.ToString())); } finally { if (us != null && us.IsActive) { UniObjects.CloseSession(us); } } result.Results.Add(new CommandResponse("Error", "There was an error procesing your request.")); return result; }
private static CssCommandResult CustomGetList(IEnumerable<string> accountList, AccountList saveListName, CssCredentials cssCredentials) { var result = new CssCommandResult(); var lHostName = _cssHostname ?? cssCredentials.Hostname; var lAccount = _cssAccount ?? cssCredentials.Account; var lUser = _cssUserName ?? cssCredentials.User; var lPassword = _cssUserPassword ?? cssCredentials.UserPassword; const string lServiceType = CssServiceType; UniSession us = null; try { Console.WriteLine($"{lHostName}, {lUser}, {lAccount}, {lServiceType}"); //get the session object us = UniObjects.OpenSession(lHostName, lUser, lPassword, lAccount, lServiceType); UniCommand cmd = us.CreateUniCommand(); cmd.Command = $"EDIT-LIST {saveListName.AccountListName}"; cmd.Execute(); result.Results.Add(new CommandResponse(cmd.Command, cmd.Response)); cmd.Reply("I"); //Get list ready for insert foreach (var acct in accountList) { if (!acct.Contains("=")) continue; var account = acct.Split("=")[1].Replace("]",""); cmd.Reply($"{account}"); } cmd.Reply(""); // Send empty marker to close list cmd.Reply("FI"); // Save list result.Results.Add(new CommandResponse(cmd.CommandStatus.ToString(), cmd.Response)); return result; } catch (Exception ex) { result.Results.Add(new CommandResponse("Exception", ex.ToString())); } finally { if (us != null && us.IsActive) { UniObjects.CloseSession(us); } } result.Results.Add(new CommandResponse("Error", "There was an error procesing your request.")); return result; }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "HS.SALES"; conn_str.ServerType = "UNIVERSE"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "uvcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); UniSession us1 = con.UniSession; string RoutineName = "!TIMDAT"; int IntTotalAtgs = 1; string[] largs = new string[IntTotalAtgs]; largs[0] = "1"; UniDynArray tmpStr2; UniSubroutine sub = us1.CreateUniSubroutine(RoutineName, IntTotalAtgs); for (int i = 0; i < IntTotalAtgs; i++) { sub.SetArg(i, largs[i]); } sub.Call(); tmpStr2 = sub.GetArgDynArray(0); string result = "\n" + "Result is :" + tmpStr2; Console.WriteLine(" Response from UniSubRoutineSample :" + result); con.Close(); } catch (Exception e) { Console.WriteLine(e.Message); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }
public void Connect() { // check for required props throw exception if not set // do i need try/catch here or just let exception bubble up/out? try { _uSession = UniObjects.OpenSession(Host, Login, Password, Catalog); IsConnected = true; } catch (UniSessionException e) { IsConnected = false; throw e; } }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "demo"; conn_str.ServerType = "UNIDATA"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "udcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); UniSession us1 = con.UniSession; UniCommand cmd = us1.CreateUniCommand(); cmd.Command = "LIST STUDENT ALL SAMPLE 10"; cmd.Execute(); string response_str = cmd.Response; Console.WriteLine("UniCommand Output" + response_str + Environment.NewLine); con.Close(); } catch (Exception e) { string s = e.Message; if (e.InnerException != null) { s += e.InnerException.Message; } Console.WriteLine(s); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }
public static bool UpdateProducts(List <Orders> Cart, string OrderID, string Product) { try { int lRecID = 99; U2ConnectionStringBuilder conn_bldr = new U2ConnectionStringBuilder(); conn_bldr.UserID = "administrator"; conn_bldr.Password = "******"; conn_bldr.Server = "myserver"; conn_bldr.ServerType = "universe"; conn_bldr.Database = "HS.SALES"; conn_bldr.AccessMode = "Native"; conn_bldr.RpcServiceType = "uvcs"; string lConnStr = conn_bldr.ConnectionString; U2Connection lConn = new U2Connection(); lConn.ConnectionString = lConnStr; lConn.Open(); UniSession lUniSession = lConn.UniSession; U2Command cmd = lConn.CreateCommand(); //CUSTID,FNAME,LNAME : Single Value //PRODID, BUY_DATE : Multi Value //Syntax : Action=Update;File=?;Attributes=?;Where=?;Sort UniDynArray lArr = new UniDynArray(lUniSession, "2/1/1991"); lArr.Insert(1, -1, "3/9/1991"); lArr.Insert(1, -1, "4/1/1991"); string lCmd = string.Format("UPDATE SHOPPINGCART SET FNAME={0},BUY_DATE='{1}' WHERE CUSTID={2} ", "Fred2", lArr.StringValue, lRecID); cmd.CommandText = lCmd; int l2 = cmd.ExecuteNonQuery(); lConn.Close(); } catch (Exception e2) { string lErr = e2.Message; if (e2.InnerException != null) { lErr += lErr + e2.InnerException.Message; } } return(true); }
public static bool DeleteProducts(List <Orders> Cart, string OrderID, string Product) { /// // First Insert, then Print, then Delete try { Console.WriteLine(Environment.NewLine + "Start..."); U2ConnectionStringBuilder conn_bldr = new U2ConnectionStringBuilder(); conn_bldr.UserID = "Demo"; conn_bldr.Password = "******"; conn_bldr.Server = "localhost"; conn_bldr.ServerType = "universe"; conn_bldr.Database = "pwdemo"; conn_bldr.AccessMode = "Native"; conn_bldr.RpcServiceType = "uvcs"; string lConnStr = conn_bldr.ConnectionString; U2Connection lConn = new U2Connection(); lConn.ConnectionString = lConnStr; lConn.Open(); UniSession lUniSession = lConn.UniSession; U2Command cmd = lConn.CreateCommand(); // delete inserted value cmd.CommandText = string.Format("Action=Delete;File=SHOPPINGCART;Where=newrecid={0}", OrderID); int l2 = cmd.ExecuteNonQuery(); //close connection lConn.Close(); } catch (Exception e2) { string lErr = e2.Message; if (e2.InnerException != null) { lErr += lErr + e2.InnerException.Message; } } // public static bool InsertOrderItem(List<Orders> LineItem, string OrderNumber) return(true); }
/// <summary> /// Get native string in Native mode /// </summary> /// <param name="conStrBdr"></param> /// <param name="strFileName"></param> /// <returns></returns> private string GetNativeString(U2ConnectionStringBuilder conStrBdr, string strFileName) { try { U2Connection con = new U2Connection(); con.ConnectionString = conStrBdr.ToString(); con.Open(); string strInfo = string.Format("Connected......{0}{0}", Environment.NewLine); // 0 is meaningless bwkRetrieve.ReportProgress(0, strInfo); string strNative = string.Empty; UniSession us1 = con.UniSession; UniCommand cmd = us1.CreateUniCommand(); // List no more than 10 records for sample if (conStrBdr.ServerType == "UNIDATA") { cmd.Command = string.Format("LIST {0} ALL SAMPLE 10", strFileName); } else { cmd.Command = string.Format("LIST {0} SAMPLE 10", strFileName); } cmd.Execute(); if (cmd.Response != null) { strNative = cmd.Response.Trim(); } con.Close(); return(strNative); } catch (Exception e) { throw e; } }
private static CssCommandResult ChangeIt2(CssAccountFile file, AccountList list, string developerCode, string projectCode, string lenderCode, string accountCode, Note changeNote, CssCredentials cssCredentials) { var result = new CssCommandResult(); var lHostName = _cssHostname ?? cssCredentials.Hostname; var lAccount = _cssAccount ?? cssCredentials.Account; var lUser = _cssUserName ?? cssCredentials.User; var lPassword = _cssUserPassword ?? cssCredentials.UserPassword; const string lServiceType = CssServiceType; string fileInitial = file.FileName.ToCharArray() [0].ToString(); UniSession us = null; try { Console.WriteLine($"{lHostName}, {lUser}, {lAccount}, {lServiceType}"); //get the session object us = UniObjects.OpenSession(lHostName, lUser, lPassword, lAccount, lServiceType); UniCommand cmd = us.CreateUniCommand(); cmd.Command = "CHANGE.IT2"; cmd.Execute(); //result.Results.Add(new CommandResponse(cmd.Command, cmd.Response)); //ENTER THE LIST NAME YOU ARE USING cmd.Reply($"{list.AccountListName}"); //result.Results.Add(new CommandResponse("", cmd.Response)); //'C'ONTRACT OR 'M'AINTENANCE IDS? ? cmd.Reply($"{fileInitial}"); //result.Results.Add(new CommandResponse($"{fileInitial}", cmd.Response)); //CHANGE MAINTENANCE TOO? (IF APPLICABLE) ? cmd.Reply("N"); //result.Results.Add(new CommandResponse("N", cmd.Response)); //ENTER NEW DEVELOPER CODE, IF ANY ? if (!string.IsNullOrEmpty(developerCode)) { cmd.Reply($"{developerCode}"); //result.Results.Add(new CommandResponse($"{developerCode}", cmd.Response)); //WARNING: Dev Code changes may cause conflict with legal agreements.\r\n //Is our legal department aware of new dev/len relationships? (Y/N) cmd.Reply("Y"); //result.Results.Add(new CommandResponse("Legal Department", cmd.Response)); } else { cmd.Reply($"{developerCode}"); //result.Results.Add(new CommandResponse($"{projectCode}", cmd.Response)); } //Project? cmd.Reply($"{projectCode}"); //result.Results.Add(new CommandResponse($"{projectCode}", cmd.Response)); //Lender cmd.Reply($"{lenderCode}"); //result.Results.Add(new CommandResponse($"{lenderCode}", cmd.Response)); //AccountCode cmd.Reply($"{accountCode}"); //result.Results.Add(new CommandResponse($"{accountCode}", cmd.Response)); //Note cmd.Reply($"{changeNote.Message}"); //result.Results.Add(new CommandResponse($"{changeNote.Message}", cmd.Response)); //Note Type cmd.Reply("G"); //result.Results.Add(new CommandResponse($"NoteType", cmd.Response)); if (cmd.Response.Contains("OKAY TO PROCEED? (Y/N)")) { //OKAY TO PROCEED? (Y/N) cmd.Reply("Y"); } else { throw new Exception($"Could not get confirmation message. Raw result: {cmd.Response}"); } int lineNumber = 0; foreach (var line in cmd.Response.Split("\r\n")) { result.Results.Add(new CommandResponse($"Response Line: {++lineNumber}", line)); } return(result); } catch (Exception ex) { result.Results.Add(new CommandResponse("Exception", ex.ToString())); } finally { if (us != null && us.IsActive) { UniObjects.CloseSession(us); } } result.Results.Add(new CommandResponse("Error", "There was an error procesing your request.")); return(result); }
public static bool InsertOrderItem(List <Orders> LineItem, string OrderNumber) { try { U2ConnectionStringBuilder conn_bldr = new U2ConnectionStringBuilder(); conn_bldr.UserID = "Demo"; conn_bldr.Password = "******"; conn_bldr.Server = "localhost"; conn_bldr.ServerType = "universe"; conn_bldr.Database = "pwdemo"; conn_bldr.AccessMode = "Native"; conn_bldr.RpcServiceType = "uvcs"; string lConnStr = conn_bldr.ConnectionString; U2Connection lConn = new U2Connection(); lConn.ConnectionString = lConnStr; lConn.Open(); UniSession lUniSession = lConn.UniSession; U2Command cmd = lConn.CreateCommand(); //Unique sale ID or invoice Number. Do we add userid as well? // We will work with the assumption that it's one order - 5001 int newrecid = Convert.ToInt32(OrderNumber); UniDynArray Product = new UniDynArray(lUniSession); UniDynArray Quantity = new UniDynArray(lUniSession); UniDynArray Sale = new UniDynArray(lUniSession); foreach (var order in LineItem) { string ProdID = order.Serial.ToString(); string Quan = order.Quantity.ToString(); string price = order.Cost.ToString(); Product.Insert(1, -1, ProdID); Quantity.Insert(1, -1, Quan); Sale.Insert(1, -1, price); } string lCmd = string.Format("INSERT INTO SHOPPINGCART (RECID,PROD,QUAN,SALE) VALUES('{0}','{1}','{2}','{3}')", newrecid, Product, Quantity, Sale); cmd.CommandText = lCmd; int l2 = cmd.ExecuteNonQuery(); lConn.Close(); } catch (Exception e2) { string lErr = e2.Message; if (e2.InnerException != null) { lErr += lErr + e2.InnerException.Message; } return(false); } return(true); }
//public static bool InsertOrderItem(Orders LineItem, string OrderNumber) //{ // string s = ConfigurationManager.AppSettings["TESTString"]; // U2Connection con = new U2Connection(); // con.ConnectionString = s; // con.Open(); // UniSession LUniSession = con.UniSession; // U2Command cmd = con.CreateCommand(); // int recID = 9999; // int Prod = 1234; // int quantity = 1; // double cost = 9.99; // //Insert // string lcmd = string.Format("INSERT INTO SHOPPINGCART RECID,PROD,QUAN,COST) VALUES('{0}','{1}','{2}','{3}')", recID, Prod, quantity, cost); // cmd.CommandText = lcmd; // try { int L2 = cmd.ExecuteNonQuery(); } // catch(Exception ex) { return false; } // finally { } // return true; //} public static bool InsertOrderItem(List <Orders> LineItem, string OrderNumber) { try { U2ConnectionStringBuilder conn_bldr = new U2ConnectionStringBuilder(); conn_bldr.UserID = "Demo"; conn_bldr.Password = "******"; conn_bldr.Server = "localhost"; conn_bldr.ServerType = "universe"; conn_bldr.Database = "pwdemo"; conn_bldr.AccessMode = "Native"; conn_bldr.RpcServiceType = "uvcs"; string lConnStr = conn_bldr.ConnectionString; U2Connection lConn = new U2Connection(); lConn.ConnectionString = lConnStr; lConn.Open(); UniSession lUniSession = lConn.UniSession; U2Command cmd = lConn.CreateCommand(); //Unique sale ID or invoice Number. Do we add userid as well? // We will work with the assumption that it's one order - 5001 int newrecid = 5001; UniDynArray Product = new UniDynArray(lUniSession); UniDynArray Quantity = new UniDynArray(lUniSession); UniDynArray Sale = new UniDynArray(lUniSession); foreach (var order in LineItem) { string ProdID = order.Serial.ToString(); string Quan = order.Quantity.ToString(); string price = order.Cost.ToString(); Product.Insert(1, -1, ProdID); Quantity.Insert(1, -1, Quan); Sale.Insert(1, -1, price); } // As we add reccords, we will need to read , loop and drop into UniDynArray. // For now, just enter line item. //Sale.Insert(1, -1, price2); //Sale.Insert(1, -1, price3); string lCmd = string.Format("INSERT INTO SHOPPINGCART (RECID,PROD,QUAN,SALE) VALUES('{0}','{1}','{2}','{3}')", newrecid, Product, Quantity, Sale); //string lCmd = string.Format("INSERT INTO SHOPPINGCART VALUES (newrecid, Product, Quantity, Sale)"); //string lCmd = string.Format("INSERT INTO SHOPPINGCART (PROD,QUAN,SALE) VALUES('{0}','{1}','{2}')", Product, Quantity, Sale); cmd.CommandText = lCmd; int l2 = cmd.ExecuteNonQuery(); //print inserted value //cmd.CommandText = string.Format("Action=Select;File=SHOPPINGCART;Attributes=RECID,PROD,QUAN,SALE;Where=RECID={0}", newrecid); //U2DataAdapter da = new U2DataAdapter(cmd); //DataSet ds = new DataSet(); //da.Fill(ds); // delete inserted value //Console.WriteLine(Environment.NewLine + "Start : Delete new inserted value..............."); //cmd.CommandText = string.Format("Action=Delete;File=SHOPPINGCART;Where=RECID={0}", newrecid); //l2 = cmd.ExecuteNonQuery(); //close connection lConn.Close(); } catch (Exception e2) { string lErr = e2.Message; if (e2.InnerException != null) { lErr += lErr + e2.InnerException.Message; } return(false); } return(true); }
public static CssFileResult GetData(AccountList list, CssAccountFile file, CssCredentials cssCredentials) { var lHostName = cssCredentials.Hostname; var lAccount = cssCredentials.Account; var lUser = cssCredentials.User; var lPassword = cssCredentials.UserPassword; var lServiceType = cssCredentials.ServiceType; var response = new CssFileResult(); var fileResults = new CssFile { FileName = list.AccountListName }; UniSession us = null; try { //get the session object us = UniObjects.OpenSession(lHostName, lUser, lPassword, lAccount, lServiceType); // create select list UniSelectList selectList = us.CreateUniSelectList(2); selectList.GetList(list.AccountListName); // read records using array of records ids var ids = selectList.ReadListAsStringArray(); //open file UniFile cssFile = us.CreateUniFile(file.FileName); var lSet = cssFile.ReadRecords(ids); //var dict = us.CreateUniDictionary(file.FileName); //var field1 = dict.ReadField(1); //use foreach statement to construct data to be displayed foreach (UniRecord item in lSet) { var record = new CssRecord(item.RecordID, ""); var numFields = item.Record.Dcount(); for (int i = 0; i < numFields; i++) { var field = item.Record.Extract(i); var valuesCount = field.Dcount(); if (valuesCount > 1) { throw new Exception("This field has sub-values" + field); } record.Fields.Add(new CssField(i.ToString(), field.ToString())); } fileResults.Records.Add(record); } response.FileContents = fileResults; return(response); } catch (Exception ex) { response.CssResponses.Results.Add(new CommandResponse("Exception", ex.ToString())); } finally { if (us != null && us.IsActive) { UniObjects.CloseSession(us); } } response.CssResponses.Results.Add(new CommandResponse("Error", "There was an error procesing your request.")); return(response); }
static void Main(string[] args) { bool debug = Properties.Settings.Default.Verbose; U2Conn srcConn = new U2Conn(); SqlConn destConn = new SqlConn(); srcConn.Host = Properties.Settings.Default.U2Host; // "pmsteel.kwyk.net"; srcConn.Login = Properties.Settings.Default.U2Login; // "administrator"; srcConn.Password = Properties.Settings.Default.U2Password; // "H!carb0n"; srcConn.Catalog = Properties.Settings.Default.U2Account; // "C:\\BAI.PROD\\PM"; destConn.Host = Properties.Settings.Default.SqlHost; // "pmsteel.kwyk.net"; destConn.Login = Properties.Settings.Default.SqlLogin; // "pmsteel"; destConn.Password = Properties.Settings.Default.SqlPassword; // "H!carb0n"; destConn.Catalog = Properties.Settings.Default.SqlDatabase; // "pmsteel" /* try { srcConn.Connect(); destConn.Connect(); srcConn.Disconnect(); destConn.Disconnect(); } catch (Exception e) { debugPrint(true, "Error: " + e); } */ String sqlStmt = ""; try { // every thing runs out of the UniSession instance. UniSession uSession = null; //Set up variables. uSession = UniObjects.OpenSession(Properties.Settings.Default.U2Host, Properties.Settings.Default.U2Login, Properties.Settings.Default.U2Password, Properties.Settings.Default.U2Account); debugPrint(debug, "U2 openSession succeeded\n"); debugPrint(debug, "Status = " + uSession.Status + "\n"); //Class.forName("net.sourceforge.jtds.jdbc.Driver"); //Connection conn = DriverManager.getConnection(sqlJdbcUrl, sqlUser, sqlPass); //debugPrint(debug, "SQL Server connection succeeded"); //Statement stmt = conn.createStatement(); UniFile uf = uSession.CreateUniFile(Properties.Settings.Default.U2File); debugPrint(debug, Properties.Settings.Default.U2File + " file opened\n"); //debugPrint(debug, uf.ToString()); UniSelectList usl = uSession.CreateUniSelectList(8); StreamWriter sw = new StreamWriter(@"c:\temp\u2rl.xml"); usl.Select(uf); while (!usl.LastRecordRead) { String key = usl.Next(); debugPrint(debug, "key: " + key + "\n"); if (key != "") { XElement xd = new XElement("data"); XElement xd2 = new XElement("data"); UniDynArray udaRow = uf.Read(key); int v2 = 0; int s2 = 1; while (s2 > 0) { XElement xv2 = new XElement("val", new XAttribute("loc", s2)); s2 = 0; for (int f2 = 1; f2 <= udaRow.Dcount(); f2++) { if ( s2 <= udaRow.Dcount(f, v)) { XElement xf2 = new XElement("fld", new XAttribute("loc", f2)); string fld = udaRow.Extract(f2, v2).ToString(); if ("" != fld) { } } } for (int f = 1; f <= udaRow.Dcount(); f++) { XElement xf = new XElement("fld", new XAttribute("loc", f)); string fld = udaRow.Extract(f).ToString(); if ("" != fld) { for (int v = 1; v <= udaRow.Dcount(f); v++) { XElement xv = new XElement("val", new XAttribute("loc", v)); string val = udaRow.Extract(f, v).ToString(); if ("" != val) { for (int s = 1; s <= udaRow.Dcount(f, v); s++) { xv.Add(new XElement("sub", new XAttribute("loc", s), udaRow.Extract(f, v, s).ToString())); } } xf.Add(xv); } } xd.Add(xf); } XElement xr = new XElement("row", new XElement("id", key), xd); sqlStmt = "INSERT INVF(u2_id, u2_data) VALUES ('" + key.Replace("'", "''") + "', '" + xd.ToString().Replace("'", "''") + "')"; sw.WriteLine(xr); } } sw.Close(); //UniDynArray udaRow = uSession.CreateUniDynArray(usl.Next()); //debugPrint(debug, usl.readList().ToString()); //while (!usl.IsLastRecordRead) //while (null != udaRow) //{ //String usKey = udaRow.Extract(1).ToString(); //Properties.Settings.Default.SqlTable = usKey; //debugPrint(debug, "key: " + usKey + "\n"); //debugPrint(debug, usKey.ToString() + ": " + Properties.Settings.Default.SqlTable); //sqlStmt = "IF EXISTS (SELECT * FROM sys.tables WHERE OBJECT_ID('dbo.[" + Properties.Settings.Default.SqlTable + "]') IS NOT NULL) DROP TABLE dbo.[" + Properties.Settings.Default.SqlTable + "]"; //debugPrint(debug, sqlStmt); //stmt.executeUpdate(sqlStmt); //sqlStmt = "CREATE TABLE dbo.[" + Properties.Settings.Default.SqlTable + "] (ID varchar(255) NOT NULL,LOC smallint NOT NULL,SEQ smallint NOT NULL,VAL varchar(8000) NOT NULL)"; //debugPrint(debug, sqlStmt); //stmt.executeUpdate(sqlStmt); //{{ int valIdx = 1; int fldIdx = 1; //for (int fldIdx = 1; fldIdx <= udaRow.Dcount(); fldIdx++) //{ // debugPrint(debug, "field: " + udaRow.Extract(fldIdx).ToString()); // for (int valIdx = 1; valIdx <= udaRow.dcount(fldIdx); valIdx++) // { // UniString usValue = udaRow.extract(fldIdx, valIdx); // debugPrint(debug, usValue.ToString()); // } //} //UniFile ufTblFile = uSession.open(usKey); //debugPrint(debug, "file opened"); ////debugPrint(debug, usKey.ToString()); //UniSelectList uslTblList = uSession.selectList(2); //uslTblList.select(ufTblFile); //UniString usTblKey = uslTblList.next(); //int cnt = 0; //while (!uslTblList.isLastRecordRead()) //{ // if (cnt++ % 1000 == 0) debugPrint(debug, "rows: " + cnt); // //debugPrint(debug, usTblKey.ToString()); // UniDynArray udaTblRow = new UniDynArray(ufTblFile.read(usTblKey)); // for (int fldTblIdx = 1; fldTblIdx <= udaTblRow.dcount(); fldTblIdx++) // { // for (int valTblIdx = 1; valTblIdx <= udaTblRow.dcount(fldTblIdx); valTblIdx++) // { // UniString usTblValue = udaTblRow.extract(fldTblIdx, valTblIdx); // //debugPrint(debug, usTblValue.ToString()); // sqlStmt = "INSERT [" + Properties.Settings.Default.SqlTable + "] VALUES ('" + usTblKey.ToString().replace("'", "''") + "', " + fldTblIdx + ", " + valTblIdx + ", '" + usTblValue.ToString().replace("'", "''") + "')"; // //debugPrint(debug, sqlStmt); // //stmt.executeUpdate(sqlStmt); // } // } // usTblKey = uslTblList.next(); //} //udaRow = uSession.CreateUniDynArray(usl.Next()); //} /* udaKeys = usl.readList(); //UniDynArray udaValues; sqlStmt = "TRUNCATE TABLE [" + Properties.Settings.Default.SqlTable + ']'; debugPrint(debug, sqlStmt); stmt.executeUpdate(sqlStmt); for (int keyIdx = 1;keyIdx < udaKeys.count();keyIdx++) { usKey = udaKeys.extract(keyIdx); debugPrint(debug, usKey.ToString()); if (usKey.length() > 0) { debugPrint(debug, udaKeys.count() + " " + usKey + usKey.length() + " " + keyIdx); sqlStmt = "INSERT [" + Properties.Settings.Default.SqlTable + "] VALUES ('" + usKey + "', 0, 1, '" + usKey + "')"; debugPrint(debug, sqlStmt); stmt.executeUpdate(sqlStmt); udaRow = new UniDynArray(uf.read(usKey)); for (int fldIdx = 1; fldIdx <= udaRow.dcount(); fldIdx++) { //usField = udaRow.extract(fldIdx) ; //udaValues = new UniDynArray(usField); for (int valIdx = 1; valIdx <= udaRow.dcount(fldIdx); valIdx++) { usValue = udaRow.extract(fldIdx, valIdx) ; if (usValue.length() > 0) { //debugPrint(debug, fldIdx + " " + valIdx + " -->" + usValue + "<--"); sqlStmt = "INSERT [" + Properties.Settings.Default.SqlTable+ "] VALUES ('" + usKey + "', " + fldIdx + ", " + valIdx + ", '" + usValue.ToString().replace("'", "''") + "')"; debugPrint(debug, sqlStmt); stmt.executeUpdate(sqlStmt); } } } } //debugPrint(debug, udaKeys.extract(keyIdx)); } */ uf.Close(); debugPrint(debug, Properties.Settings.Default.U2File + " file closed\n"); // did we connect? debugPrint(debug, "U2 Disconnected\n"); //conn.close(); //debugPrint(debug, "SQL Disconnected."); } catch (UniSessionException e) { debugPrint(debug, "Error: " + e); } catch (UniFileException e) { debugPrint(debug, "File Error: " + e); } catch (UniSelectListException e) { // TODO Auto-generated catch block debugPrint(debug, "File Error: " + e); } Console.ReadKey(); }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "demo"; conn_str.ServerType = "UNIDATA"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "udcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); UniSession us1 = con.UniSession; UniSelectList sl = us1.CreateUniSelectList(2); // Select UniFile UniFile fl = us1.CreateUniFile("STUDENT"); sl.Select(fl); // read records as unidataset string[] sArray = { "291222021", "521814564", "424325656" }; UniDataSet uSet = fl.ReadRecords(sArray); // use for each statement to print the record foreach (UniRecord item in uSet) { Console.WriteLine(item.ToString()); } // use index to print the record int lCount = uSet.RowCount; for (int ii = 0; ii < lCount; ii++) { UniRecord ee = uSet[ii]; Console.WriteLine(ee.ToString()); } // print one by one record UniRecord q2 = uSet["291222021"]; string sq2 = q2.ToString(); Console.WriteLine(" Record data for rec id 291222021:" + sq2); UniRecord q3 = uSet["521814564"]; string sq3 = q3.ToString(); Console.WriteLine(" Record data for rec id 521814564:" + sq3); UniRecord q4 = uSet["424325656"]; string sq4 = q4.ToString(); Console.WriteLine(" Record data for rec id 424325656:" + sq4); //create UniDataSet in the Client Side UniDataSet uSet3 = us1.CreateUniDataSet(); uSet3.Insert("3", "aaa"); uSet3.Insert("4", "bbb"); uSet3.Insert("5", "vvv"); uSet3.Insert(2, "8", "www"); con.Close(); } catch (Exception e) { string s = e.Message; if (e.InnerException != null) { s += e.InnerException.Message; } Console.WriteLine(s); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "demo"; conn_str.ServerType = "UNIDATA"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "udcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); UniSession us1 = con.UniSession; string RoutineName = "*GETXMLSUB"; int IntTotalAtgs = 6; string[] largs = new string[IntTotalAtgs]; largs[0] = "LIST STUDENT ALL"; largs[1] = "arg2"; largs[2] = "arg3"; largs[3] = "arg4"; largs[4] = "arg5"; largs[5] = "arg6"; UniDynArray tmpStr2; UniSubroutine sub = us1.CreateUniSubroutine(RoutineName, IntTotalAtgs); for (int i = 0; i < IntTotalAtgs; i++) { sub.SetArg(i, largs[i]); } sub.Call(); tmpStr2 = sub.GetArgDynArray(2); string result = "\n" + "Result is :" + tmpStr2; Console.WriteLine(" Response from UniSubRoutineSample :" + result); con.Close(); } catch (Exception e) { string s = e.Message; if (e.InnerException != null) { s += e.InnerException.Message; } Console.WriteLine(s); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }
static void Main(string[] args) { try { U2ConnectionStringBuilder conn_str = new U2ConnectionStringBuilder(); conn_str.UserID = "user"; conn_str.Password = "******"; conn_str.Server = "localhost"; conn_str.Database = "HS.SALES"; conn_str.ServerType = "UNIVERSE"; conn_str.AccessMode = "Native"; // FOR UO conn_str.RpcServiceType = "uvcs"; // FOR UO conn_str.Pooling = false; string s = conn_str.ToString(); U2Connection con = new U2Connection(); con.ConnectionString = s; con.Open(); Console.WriteLine("Connected........................."); // get RECID UniSession us1 = con.UniSession; // open customer file UniFile fl = us1.CreateUniFile("CUSTOMER"); // read records as unidataset string[] sArray = { "2", "12", "3", "4" }; UniDataSet uSet = fl.ReadRecords(sArray); // use for each statement to print the record foreach (UniRecord item in uSet) { Console.WriteLine(item.ToString()); } // use index to print the record int lCount = uSet.RowCount; for (int ii = 0; ii < lCount; ii++) { UniRecord ee = uSet[ii]; Console.WriteLine(ee.ToString()); } // print one by one record UniRecord q2 = uSet["2"]; string sq2 = q2.ToString(); Console.WriteLine(" Record data for rec id 2:" + sq2); UniRecord q3 = uSet["3"]; string sq3 = q3.ToString(); Console.WriteLine(" Record data for rec id 3:" + sq3); UniRecord q4 = uSet["4"]; string sq4 = q4.ToString(); Console.WriteLine(" Record data for rec id 4:" + sq4); // create UniDataSet in the Client Side UniDataSet uSet3 = us1.CreateUniDataSet(); uSet3.Insert("3", "aaa"); uSet3.Insert("4", "bbb"); uSet3.Insert("5", "vvv"); uSet3.Insert(2, "8", "www"); con.Close(); } catch (Exception e) { Console.WriteLine(e.Message); } finally { Console.WriteLine("Enter to exit:"); string line = Console.ReadLine(); } }