/// <summary> /// Atualiza o status. /// </summary> /// <param name="t38"></param> public static void UpdateStatus(WorkTreeEntity tentity) { using (var rs = new MyRecordSet()) { var sql = "UPDATE [Sage_WorkTree] SET ReadBySAP = '{0}', MSG_SAP = '{2}' WHERE ID_CodeBars = '{1}'"; rs.DoQuery(sql, tentity.ReadBySAP, tentity.ID_CodeBars, tentity.MSG_SAP.Replace("'", "\"")); } }
/// <summary> /// Retorna as estruturas dos itens não lidas ou com erro. /// </summary> /// <returns></returns> public static List <WorkTreeEntity> GetDados() { var ListWorkTree = new List <WorkTreeEntity>(); using (var rs0 = new ConnSqlServer()) { rs0.DoQuery("SELECT * FROM [Sage_WorkTree] WITH (NOLOCK) WHERE ReadBySAP <> 'Y'"); while (rs0.HasNext()) { var wte = new WorkTreeEntity(); try { // Documento wte.ID_CodeBars = rs0.GetFieldValue("ID_CodeBars").ToString(); wte.OITT_PriceList = rs0.GetFieldValue("OITT_PriceList").ToInt(); wte.OITT_Project = rs0.GetFieldValue("OITT_Project").ToString(); wte.OITT_Quantity = rs0.GetFieldValue("OITT_Quantity").ToDouble(); wte.OITT_ToWH = rs0.GetFieldValue("OITT_ToWH").ToString(); wte.ReadBySAP = rs0.GetFieldValue("ReadBySAP").ToChar(); wte.MSG_SAP = rs0.GetFieldValue("MSG_SAP").ToString(); var rs1 = new ConnSqlServer(); rs1.DoQuery("SELECT * FROM [Sage_WorkTreeL1] WITH (NOLOCK) WHERE [ID_CodeBars] = '{0}'", wte.ID_CodeBars); while (rs1.HasNext()) { var wtl1e = new WorkTreeL1Entity(); // Linha //wtl1e.ITT1_ChildNum = rs_header.GetFieldValue("ITT1_ChildNum").ToInt(); wtl1e.ITT1_Quantity = rs1.GetFieldValue("ITT1_Quantity").ToDouble(); //wtl1e.ITT1_Type = rs_header.GetFieldValue("ITT1_Type").ToInt(); wtl1e.OITM_CodeBars = rs1.GetFieldValue("OITM_CodeBars").ToString(); if (!MyQuery.Exist("RSD_IsItemOrResource", wtl1e.OITM_CodeBars, "Referencia")) { throw new Exception("Código de barras não cadastrado " + wtl1e.OITM_CodeBars); } if (MyQuery.GetValue("RSD_IsItemOrResource", wtl1e.OITM_CodeBars, "Referencia", "Tipo").ToChar() == 'I') { if (!MyQuery.GetValue("OITM", wtl1e.ITT1_ItemCode, "ItemCode", "InvntItem").ToBoolean()) { wtl1e.ITT1_IssueMthd = 'B'; } else { wtl1e.ITT1_IssueMthd = rs1.GetFieldValue("ITT1_IssueMthd").ToChar(); } } else { wtl1e.ITT1_IssueMthd = rs1.GetFieldValue("ITT1_IssueMthd").ToChar(); } wtl1e.ITT1_WareHouse = rs1.GetFieldValue("ITT1_WareHouse").ToString(); wtl1e.ITT1_Price = rs1.GetFieldValue("ITT1_Price").ToDouble(); wte.Lines.Add(wtl1e); } ListWorkTree.Add(wte); } catch (Exception ex) { wte.ReadBySAP = 'E'; wte.MSG_SAP = ex.Message; WorkTreeDAO.UpdateStatus(wte); Log.Register("WorkTree", System.Diagnostics.EventLogEntryType.Error , ex.Message); } } } Log.Register("WorkTree", System.Diagnostics.EventLogEntryType.Information, "0 - Foram criados {0} pacotes", ListWorkTree.Count); return(ListWorkTree); }