public bool CreateDocument([FromBody] IntBEDocumentoInterno clsDocumentoInterno) { IntBEDocumentoInterno clsDocumento = new IntBEDocumentoInterno { Entidade = clsDocumentoInterno.Entidade, Tipodoc = clsDocumentoInterno.Tipodoc, TipoEntidade = clsDocumentoInterno.TipoEntidade, Serie = clsDocumentoInterno.Serie, Data = clsDocumentoInterno.Data, DataVencimento = clsDocumentoInterno.DataVencimento }; clsDocumento.Linhas.RemoveTodos(); try { ProductContext.MotorLE.Internos.Documentos.PreencheDadosRelacionados(clsDocumento); foreach (IntBELinhaDocumentoInterno linha in clsDocumentoInterno.Linhas) { double quantidade = linha.Quantidade; ProductContext.MotorLE.Internos.Documentos.AdicionaLinha(clsDocumento, linha.Artigo, Armazem: linha.Armazem, Lote: linha.Lote, Quantidade: quantidade); } ProductContext.MotorLE.Internos.Documentos.Actualiza(clsDocumento); return(true); } catch (Exception ex) { throw ex; } }
/// <summary> /// Creates a new invoice. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void CmdSave_Click(object sender, EventArgs e) { IntBEDocumentoInterno objDocInterno = new IntBEDocumentoInterno() { Tipodoc = txtTipoDoc.Text, Serie = txtSerie.Text, Data = DateTime.Today, DataVencimento = DateTime.Today }; string strAvisos = string.Empty; try { if (chkDadosRelacionados.Checked) { // Set all the entity related information. PriEngine.Engine.Internos.Documentos.PreencheDadosRelacionados(objDocInterno); } if (lvLinhas.Items.Count > 0) { foreach (ListViewItem item in lvLinhas.Items) { IntBELinhasDocumentoInterno linhas = new IntBELinhasDocumentoInterno(); string strArtigo = Convert.ToString(item.SubItems[0].Text); string strArmazem = Convert.ToString(item.SubItems[1].Text); double dblQtd = Convert.ToDouble(item.SubItems[2].Text); double dblPreco = Convert.ToDouble(item.SubItems[3].Text); // Add new line to the document and set all the item related information. PriEngine.Engine.Internos.Documentos.AdicionaLinha(objDocInterno, strArtigo, strArmazem, PrecoUnitario: dblPreco, Quantidade: dblQtd); linhas = objDocInterno.Linhas; } } else { ShowMessage("There are no items."); } // creates the internal document PriEngine.Engine.Internos.Documentos.Actualiza(objDocInterno, ref strAvisos); if (strAvisos.Length > 0) { ShowMessage($"Error writing document.{Environment.NewLine}" + strAvisos); } else { ShowMessage("Document created successfully!", iconId: StdPlatBS100.StdBSTipos.IconId.PRI_Informativo); } } catch (Exception ex) { ShowMessage("Unable to save document. \n" + ex.Message); } }