Bueno esta pregunta la hice antes, pero no me resulta bien el codigo que estoy intentando, quiero hacer un reporte como el de la imagen:
Bueno el amigo J.V.Movilla me recomendo crear una tabla temporal en la que se encuentren los campos agrupados para luego mostrarlos en el Datareport ya q nadie sabia como agrupar x 2 campos en Datareport, e intentado este codigo y no me esta funcionando bien:
Código:
Dim nRec As Long
Cn.Execute "DELETE FROM RODetailsTemp"
Set Recrodet = Nothing
Recrodet.Open "SELECT RO.RODate,ROD.ROPartNo,I.InvItemDesc,ROD.ROQuantity FROM RepairOrders RO, RODetails ROD, Inventory I Where ROD.RONo = RO.RONo and ROD.ROPartNo = I.InvPartNo ", Cn, adOpenStatic, adLockReadOnly
If Recrodet.RecordCount <> 0 Then
Recrodet.MoveFirst
While Not Recrodet.EOF
Xdate = "#" & Format(Recrodet(0), "mm/dd/yyyy") & "#"
RecBus.Open "SELECT * FROM RODetailsTemp ", Cn, adOpenStatic, adLockReadOnly
RecBus.Find "ROXDate = " & Xdate & " "
If RecBus.EOF Or RecBus.RecordCount = 0 Then
insertar = "Insert Into RODetailsTemp ([ROXDate],[ROPartNo],[ROItemDesc],[ROQuantity]) values (" & Xdate & ",'" & Trim(Recrodet(1)) & "','" & Trim(Recrodet(2)) & "'," & Trim(Recrodet(3)) & ")"
nRec = nRec + 1
Else
RecBus.Find "ROPartNo = " & Recrodet(1) & " "
If RecBus.EOF Or RecBus.RecordCount = 0 Then
insertar = "Insert Into RODetailsTemp ([ROXDate],[ROPartNo],[ROItemDesc],[ROQuantity]) values (" & Xdate & ",'" & Trim(Recrodet(1)) & "','" & Trim(Recrodet(2)) & "'," & Trim(Recrodet(3)) & ")"
nRec = nRec + 1
Else
insertar = "Update RODetailsTemp Set ROQuantity = ROQuantity + " & Recrodet(3) & " Where ROXDate = " & Xdate & " and ROPartNo = '" & Recrodet(1) & "' "
End If
End If
Cn.Execute insertar
Recrodet.MoveNext
Set RecBus = Nothing
Wend
End If
Set Recrodet = Nothing
Comprobar:
With Recrodet
If .State Then .Close
.Open "SELECT ROCustNo,ROCustName,(ROGrandTotal - ROAmountPaid) as balance FROM RepairOrders ", Cn, adOpenStatic, adLockReadOnly
DoEvents
If .RecordCount < nRec Then GoTo Comprobar
.Close
End With Bueno, el caodigo no me bota todos los datos correctos, se salta el agrupar unos campos, tengo estos campos en la tabla a ser agrupada:
Date -Part No - Repair
24/07/07 - 7829 - 2
24/07/07 - 7829 - 3
24/07/07 - 7831 - 1
24/07/07 - 7831 - 2
25/07/07 - 7829 - 1
25/07/07 - 7831 - 1
26/07/07 - 7829 - 2
26/07/07 - 7829 - 1
26/07/07 - 7831 - 2
26/07/07 - 7831 - 1
El codigo me agrupa y me da este reultado:
Date -Part No - Repair
24/07/07 - 7831 - 3
25/07/07 - 7831 - 1
26/07/07 - 7829 - 3
26/07/07 - 7831 - 3
Como ven para el "Part No" nro 7831 si lo agrupa bien y para el nro 7829 solo me agrupa del dia 26, faltaria de los 2 dias anteriores para esa Part No = 7829, faltaria:
24/07/07 - 7829 - 5
25/07/07 - 7829 - 1
Que esta mal en mi codigo? Salu2 a todos.