public void txtFolio_KeyPress(object sender, KeyPressEventArgs e) { try { if ((int)e.KeyChar == (int)Keys.Enter) { if (string.IsNullOrEmpty(txtFolio.Text)) { SDK.Documentos.frmListadoDocumentos formulario = new frmListadoDocumentos(IdDocument, txtCardCode.Text.Replace('*', '%'), txtCardName.Text.Replace('*', '%'), dtpDocDate.Value, txtNumAtCard.Text.Replace('*', '%')); if (formulario.ShowDialog() == System.Windows.Forms.DialogResult.Yes) { txtFolio.Text = formulario.DocEntry.ToString(); typeDocument = formulario.Tipo; } else { //this.CleanScreen(); return; } } #region Documento Encontrado (dgvDatos.DataSource as DataTable).Rows.Clear(); DocumentSAP = new SDK_SAP.Clases.Document(); DocumentSAP = DocumentSAP.Fill_OPOR(Convert.ToDecimal(txtFolio.Text), ObjType, typeDocument); #region LLenar Form this.CleanScreen(); txtFolio.Text = DocumentSAP.DocNum.ToString(); txtCardCode.Text = DocumentSAP.CardCode; txtCardName.Text = DocumentSAP.CardName; txtMoneda.Text = DocumentSAP.DocCurrency; cbMoneda.SelectedValue = DocumentSAP.DocCurrency; txtNumAtCard.Text = DocumentSAP.NumAtCard; cbMoneda.Enabled = false; if (DocumentSAP.DocStatus == "C") { txtStatus.Text = "Cerrado"; btnCrear.Enabled = false; cerrarStripButton.Enabled = false; cerrarLíneaToolStripMenuItem.Enabled = false; agregarFilaToolStripMenuItem1.Enabled = false; tooStripDuplicar.Enabled = false; } else if (DocumentSAP.DocStatus == "O") { txtStatus.Text = "Abierto"; btnCrear.Enabled = true; cerrarStripButton.Enabled = true; cerrarLíneaToolStripMenuItem.Enabled = true; agregarFilaToolStripMenuItem1.Enabled = true; tooStripDuplicar.Enabled = true; } else if (DocumentSAP.DocStatus == "P") { txtStatus.Text = "Pendiente"; btnCrear.Text = "Autorizar"; btnCrear.Enabled = true; cerrarStripButton.Enabled = true; cerrarLíneaToolStripMenuItem.Enabled = true; agregarFilaToolStripMenuItem1.Enabled = true; tooStripDuplicar.Enabled = true; } else if (DocumentSAP.DocStatus == "A") { txtStatus.Text = "Autorizado"; btnCrear.Text = "Crear"; btnCrear.Enabled = true; cerrarStripButton.Enabled = false; cerrarLíneaToolStripMenuItem.Enabled = false; agregarFilaToolStripMenuItem1.Enabled = false; tooStripDuplicar.Enabled = false; } else if (DocumentSAP.DocStatus == "R") { txtStatus.Text = "Rechazado"; btnCrear.Text = "Crear"; btnCrear.Enabled = false; cerrarStripButton.Enabled = false; cerrarLíneaToolStripMenuItem.Enabled = false; agregarFilaToolStripMenuItem1.Enabled = false; tooStripDuplicar.Enabled = false; } dtpDocDate.Value = DocumentSAP.DocDate; dtpDocDueDate.Value = DocumentSAP.DocDueDate; txtComments.Text = DocumentSAP.Comments; txtSubtotal.Text = (DocumentSAP.DocTotal - DocumentSAP.VatSum).ToString("N2"); txtIVA.Text = DocumentSAP.VatSum.ToString("N2"); txtTotal.Text = DocumentSAP.DocTotal.ToString("N2"); #region Detalle foreach (var item in DocumentSAP.Lines) { DataRow row = (dgvDatos.DataSource as DataTable).NewRow(); row["ItemCode"] = item.ItemCode; row["ItemName"] = item.ItemDescription; row["Quantity"] = item.Quantity; row["OpenQty"] = item.OpenQty; row["Price"] = item.Price; row["Currency"] = item.Currency; row["WhsCode"] = item.WarehouseCode; row["WhsName"] = item.WarehouseCode + " | " + item.WarehouseName; row["LineNum"] = item.LineNum; row["Rate"] = item.Rate; row["ShipDate"] = item.ShipDate; row["LineTotal"] = item.LineTotal; row["LineStatus"] = item.LineStatus; row["U_Vendedor"] = item.U_Vendedor; row["SlpCode"] = item.U_Vendedor; row["U_Comentario"] = item.U_Comentario; row["VolumenU"] = item.VolumenU; row["PesoU"] = item.PesoU; row["OnHand"] = item.OnHand; row["Ideal"] = item.Ideal; row["ABC"] = item.ABC; (dgvDatos.DataSource as DataTable).Rows.Add(row); (dgvDatos.DataSource as DataTable).AcceptChanges(); } #endregion #endregion #endregion #region Eliminar /* #region Documento Encontrado * (dgvDatos.DataSource as DataTable).Rows.Clear(); * * Document = new SDKDatos.SDK_OPOR(); * Document = Document.Fill(Convert.ToDecimal(txtFolio.Text)); * #region LLenar Form * this.CleanScreen(); * txtFolio.Text = Document.DocNum.ToString(); * txtCardCode.Text = Document.CardCode; * txtCardName.Text = Document.CardName; * txtMoneda.Text = Document.DocCur; * cbMoneda.SelectedValue = Document.DocCur; * txtNumAtCard.Text = Document.NumAtCard; * * cbMoneda.Enabled = false; * if (Document.DocStatus == "C") * { * txtStatus.Text = "Cerrado"; * btnCrear.Enabled = false; * cerrarStripButton.Enabled = false; * * cerrarLíneaToolStripMenuItem.Enabled = false; * agregarFilaToolStripMenuItem1.Enabled = false; * tooStripDuplicar.Enabled = false; * } * else if (Document.DocStatus == "O") * { * txtStatus.Text = "Abierto"; * btnCrear.Enabled = true; * cerrarStripButton.Enabled = true; * cerrarLíneaToolStripMenuItem.Enabled = true; * agregarFilaToolStripMenuItem1.Enabled = true; * tooStripDuplicar.Enabled = true; * } * * dtpDocDate.Value = Document.DocDate; * dtpDocDueDate.Value = Document.DocDueDate; * txtComments.Text = Document.Comments; * txtSubtotal.Text = (Document.DocTotal - Document.VatSum).ToString("N2"); * txtIVA.Text = Document.VatSum.ToString("N2"); * txtTotal.Text = Document.DocTotal.ToString("N2"); * #region Detalle * foreach (SDKDatos.SDK_POR1 item in Document.Lines) * { * DataRow row = (dgvDatos.DataSource as DataTable).NewRow(); * row["ItemCode"] = item.ItemCode; * row["ItemName"] = item.Dscription; * row["Quantity"] = item.Quantity; * row["OpenQty"] = item.OpenQty; * row["Price"] = item.Price; * row["Currency"] = item.Currency; * row["WhsCode"] = item.Whscode; * row["WhsName"] = item.Whscode + " | " + item.WhsName; * row["LineNum"] = item.LineNum; * row["Rate"] = item.Rate; * row["ShipDate"] = item.ShipDate; * row["LineTotal"] = item.LineTotal; * row["LineStatus"] = item.LineStatus; * row["U_Vendedor"] = item.U_Vendedor; * row["SlpCode"] = item.U_Vendedor; * row["U_Comentario"] = item.U_Comentario; * row["VolumenU"] = item.VolumenU; * row["PesoU"] = item.PesoU; * * (dgvDatos.DataSource as DataTable).Rows.Add(row); * * (dgvDatos.DataSource as DataTable).AcceptChanges(); * } #endregion #endregion * #endregion */ #endregion txtCardName.ReadOnly = true; txtCardName.ReadOnly = true; } #region solo lectura; if (ReadOnly) { btnCrear.Enabled = false; btnCancelar.Enabled = false; contextMenu.Enabled = false; foreach (var item in dgvDatos.DisplayLayout.Bands[0].Columns) { item.CellActivation = Activation.NoEdit; } } #endregion } catch (Exception ex) { this.SetMensaje("Error al cargar OC: " + ex.Message, 5000, Color.Red, Color.White); } }
private void btnCrear_Click(object sender, EventArgs e) { if (btnCrear.Text == "Crear") { #region Orden de compra if (string.IsNullOrEmpty(txtMoneda.Text)) { this.SetMensaje("Campo MONEDA obligatorio", 5000, Color.Red, Color.White); return; } #region Crear try { #region Encabezado DocumentSAP = new SDK_SAP.Clases.Document(); Cursor.Current = Cursors.WaitCursor; DocumentSAP.CardCode = txtCardCode.Text; DocumentSAP.Series = 15; if (!String.IsNullOrWhiteSpace(txtFolio.Text)) { DocumentSAP.DocNum = Convert.ToInt32(txtFolio.Text); } else { DocumentSAP.DocNum = 0; } DocumentSAP.DocRate = (double)Rate; DocumentSAP.DocDate = dtpDocDate.Value; DocumentSAP.DocDueDate = dtpDocDueDate.Value; DocumentSAP.DocType = "dDocument_Items"; DocumentSAP.DocCurrency = txtMoneda.Text; if (!string.IsNullOrEmpty(txtNumAtCard.Text)) { DocumentSAP.NumAtCard = txtNumAtCard.Text; } if (!string.IsNullOrEmpty(txtComments.Text)) { DocumentSAP.Comments = txtComments.Text; } DocumentSAP.DocTotal = Convert.ToDouble(txtTotal.Text); DocumentSAP.VatSum = Convert.ToDouble(txtIVA.Text); #endregion foreach (var item in dgvDatos.Rows) { #region Detalles SDK_SAP.Clases.DocumentLines line = new SDK_SAP.Clases.DocumentLines(); line.ItemCode = Convert.ToString(item.Cells["ItemCode"].Value); line.ItemDescription = Convert.ToString(item.Cells["ItemName"].Value); line.Quantity = Convert.ToDouble(item.Cells["Quantity"].Value); line.Currency = Convert.ToString(item.Cells["Currency"].Value); line.WarehouseCode = Convert.ToString(item.Cells["WhsCode"].Value); if (item.Cells["ShipDate"].Value != DBNull.Value) { line.ShipDate = Convert.ToDateTime(item.Cells["ShipDate"].Value); } line.U_Comentario = Convert.ToString(item.Cells["U_Comentario"].Value); line.U_Vendedor = Convert.ToString(item.Cells["U_Vendedor"].Value); line.Price = Convert.ToDouble(item.Cells["Price"].Value); line.Rate = Convert.ToDouble(item.Cells["Rate"].Value); line.LineTotal = Convert.ToDouble(item.Cells["LineTotal"].Value); if (item.Cells["OnHand"].Value != DBNull.Value) { line.OnHand = Convert.ToDouble(item.Cells["OnHand"].Value); } if (item.Cells["Ideal"].Value != DBNull.Value) { line.Ideal = Convert.ToDouble(item.Cells["Ideal"].Value); } if (item.Cells["VI"].Value != DBNull.Value) { line.VI = Convert.ToDouble(item.Cells["VI"].Value); } if (item.Cells["ABC"].Value != DBNull.Value) { line.ABC = Convert.ToString(item.Cells["ABC"].Value); } DocumentSAP.Lines.Add(line); #endregion } if (!txtStatus.Text.Equals("Autorizado")) { #region Borrador DocumentSAP.DocType = ObjType.ToString(); txtFolio.Text = DocumentSAP.SaveDraft(DocumentSAP).ToString(); DocumentSAP = DocumentSAP.Fill_OPOR(DocumentSAP.DocNum, ObjType, "Borrador"); txtFolio.Text = DocumentSAP.DocNum.ToString(); if (DocumentSAP.DocStatus.Equals("P")) { txtStatus.Text = "Pendiente"; } else if (DocumentSAP.DocStatus.Equals("R")) { txtStatus.Text = "Rechazado"; } else if (DocumentSAP.DocStatus.Equals("A")) { txtStatus.Text = "Autorizado"; } typeDocument = "Borrador"; var kea = new KeyPressEventArgs(Convert.ToChar(13)); this.txtFolio_KeyPress(sender, kea); this.SetMensaje("Listo", 5000, Color.Green, Color.Black); #endregion } if (txtStatus.Text.Equals("Autorizado")) { SDK.SDKDatos.SDK_DI sdk = new SDKDatos.SDK_DI(1);//--Orden de compra 1 sdk.CrearOrdenCompra(this).ToString(); this.SetMensaje("Listo", 5000, Color.Green, Color.Black); Object[] valuesOut = new Object[] { }; Datos.Connection connection = new Datos.Connection(); connection.Ejecutar("LOG", "sp_SDKDocumentosPrevios_test", new string[] { }, new string[] { "@TipoConsulta", "@ObjType", "@DocNum", "@DocNumSAP" }, ref valuesOut, 17, ObjType, DocumentSAP.DocNum, txtFolio.Text); /* #region SAP * SDK_SAP.DI.Connection.InitializeConnection(9); * SDK_SAP.DI.Connection.StartConnection(); * SDK_SAP.DI.Documents doc = new SDK_SAP.DI.Documents(9); * * txtFolio.Text = doc.AddDocument("ORDN", Document).ToString(); * * var kea = new KeyPressEventArgs(Convert.ToChar(13)); * this.txtFolio_KeyPress(sender, kea); * * SDK_SAP.DI.Connection.CloseConnection(); * this.SetMensaje("Listo", 5000, Color.Green, Color.Black); * DocumentMode = "Creado"; * * Object[] valuesOut = new Object[] { }; * Datos.Connection connection = new Datos.Connection(); * * connection.Ejecutar("LOG", * "sp_SDKDocumentosPrevios", * new string[] { }, * new string[] { "@TipoConsulta", "@ObjType", "@DocNum", "@DocNumSAP" }, * ref valuesOut, 17, ObjType, Document.DocNum, txtFolio.Text); #endregion */ } } catch (Exception ex) { this.SetMensaje(ex.Message, 5000, Color.Red, Color.White); } finally { Cursor.Current = Cursors.Arrow; } #endregion #endregion } if (btnCrear.Text == "Actualizar") { #region Modificar try { Cursor.Current = Cursors.WaitCursor; if (IdDocument == (int)SDK.Configuracion.SDK_Configuracion_Document.DocumentType.OrdenCompra) { SDK.SDKDatos.SDK_DI sdk = new SDKDatos.SDK_DI(1);//Orden de compra sdk.ActualizarDocumento(this, DocumentSAP).ToString(); this.SetMensaje("OC Actualizada correctamente", 5000, Color.Green, Color.Black); } } catch (Exception ex) { this.SetMensaje(ex.Message, 5000, Color.Red, Color.White); } finally { Cursor.Current = Cursors.Arrow; } #endregion } if (btnCrear.Text == "Autorizar") { #region Autorizar using (SqlConnection connection1 = new SqlConnection(Datos.Clases.Constantes.conectionLog)) { connection1.Open(); SqlCommand command = new SqlCommand(); command.CommandText = "sp_SDKDocumentosPrevios"; command.Connection = connection1; command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@TipoConsulta", 16); command.Parameters.AddWithValue("@DocNum", DocKey); command.Parameters.AddWithValue("@Comments", txtComments.Text); command.Parameters.AddWithValue("@WddCode", WddCode); command.Parameters.AddWithValue("@userID", ClasesSGUV.Login.Id_Usuario); try { command.ExecuteNonQuery(); connection1.Close(); MessageBox.Show("Listo", "HalcoNET", MessageBoxButtons.OK, MessageBoxIcon.Information); this.SetMensaje("Listo", 5000, Color.Green, Color.Black); DocumentSAP = DocumentSAP.Fill_OPOR(Convert.ToDecimal(txtFolio.Text), 22, "Borrador"); txtFolio.Text = DocumentSAP.DocNum.ToString(); if (DocumentSAP.DocStatus.Equals("P")) { txtStatus.Text = "Pendiente"; } else if (DocumentSAP.DocStatus.Equals("R")) { txtStatus.Text = "Rechazado"; } else if (DocumentSAP.DocStatus.Equals("A")) { txtStatus.Text = "Autorizado"; } this.SetMensaje("Listo", 5000, Color.Green, Color.Black); btnCrear.Enabled = false; } catch (Exception ex) { this.SetMensaje(ex.Message, 5000, Color.Red, Color.White); } } #endregion } }