Muy buenas a todos! Intento generar facturas a partir de los envíos (Expediciones) realizador por cliente durante un periodo de tiempo. El problema lo he encontrado al intentar crear una factura. He estado dandole vueltas, y más vueltas pero "no me sale". Estoy dando ya palos de ciego, por lo que les expongo el código que tengo por si me pudiesen orientar.
Me.cmdSeleccionar.Visible = False Dim Fila As DataRow Dim idFra As Integer Dim i As Integer
Dim dtExp As DataTable = ds.Tables("EXPEDICION") Dim dtFra As DataTable = ds.Tables("Facturas")
For i = 0 To Me.DataGridView1.RowCount - 1 If ds.Tables("EXPEDICION").Rows(i).Item("IDAGENCIA") = Me.txtIDCLIENTE.Text Then Fila = ds.Tables("Facturas").NewRow If ds.Tables("facturas").Rows.Count > 0 Then idFra = ds.Tables("FACTURAS").Rows(ds.Tables("FACTURAS").Rows.Count - 1).Item("IDFACTURA") + 1
Else idFra = 1 End If
Fila("IDFACTURA") = idFra
Fila("IDCLIENTE") = Me.txtIDCLIENTE.Text Fila("FECHAEMISION") = Me.cboFechaEmision.Text Fila("COBRADA") = False Fila("IMPRESA") = False ds.Tables("Facturas").Rows.Add(Fila)
End If Next i
FiltrarPendientesCliente()
'Modificar a facturada la expedicion For Each row As DataGridViewRow In DataGridView1.Rows
row.Cells("FACTURADO").Value = True Next Dim relFraExp As New DataRelation("FraExp", ds.Tables("Facturas").Columns("IDFACTURA"), _ ds.Tables("Expedicion").Columns("IDFACTURA")) ds.Relations.Add(relFraExp)
bs.EndEdit() da.Update(ds, "EXPEDICION") daF.Update(ds, "Facturas") ds.AcceptChanges()
Me.txtFactura.Text = idFra MessageBox.Show("Creada Factura Nº: " & idFra) 'Mostrar expediciones facturadas Dim dv As DataView = ds.Tables("Expedicion").DefaultView
dv.RowFilter = "IDFACTURA='" & Me.txtFactura.Text & "'" Me.DataGridView1.DataSource = dv
Me da error al actualizar las tablas:Update requiere que InsertCommand sea válido cuando se pasa la colección DataRow con filas modificadas.
Gracias por su atención. Posiblemente esté haciendo alguna "burrada", por lo que agradecería cualquier comentario, orientación o enlace. Gracias de nuevo. Abrazos,
Sherezade |