'Activity module
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
End Sub
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
End Sub
Sub Activity_Create(FirstTime As Boolean)
' Obtenemos el pedido
Dim pedidoObject As pedidoObjeto
pedidoObject = BaseDatos.obtenerPedidoPorId(Main.tablaSeleccion)
' Obtenemos el cliente del pedido
Dim clienteObject As clienteObjeto
clienteObject = BaseDatos.ObtenerClientePorId(pedidoObject.cliente)
Dim pagina As String
Dim impresora As TextWriter
Dim now As Long
now = DateTime.now
DateTime.DateFormat = "dd/MM/yyyy"
pagina = "! U1 JOURNAL" & Chr(13) & Chr(10)
pagina = pagina & "! U1 SETLP 7 0 24" & Chr(13) & Chr(10)
pagina = pagina & "EMBUTIDOS CORONA S.A. DE C.V." & Chr(13)
pagina = pagina & DateTime.Date(now) & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "LUIS ENRIQUE WILLIAMS 865" & Chr(13)
pagina = pagina & "PARQUE INDUSTRIAL BELENES NORTE" & Chr(13)
pagina = pagina & "ZAPOPAN, JALISCO MEXICO" & Chr(13)
pagina = pagina & "C.P. 45150" & Chr(13)
pagina = pagina & "RFC: EC0771130114" & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "CREDITO" & Chr(13)
pagina = pagina & "FACTURADO A:" & Chr(13)
pagina = pagina & clienteObject.nombre.Trim & Chr(13)
pagina = pagina & clienteObject.direccion.Trim & Chr(13)
pagina = pagina & clienteObject.colonia.Trim & Chr(13)
pagina = pagina & clienteObject.ciudad.Trim & Chr(13)
pagina = pagina & "RFC: " & clienteObject.rfc.Trim & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & " CANT DESC P UNI IMPORTE" & Chr(13)
' Obtenemos los detalles del pedido
Dim detallesPedidoList As List
detallesPedidoList = BaseDatos.ObtenerDetallesPedido(Main.tablaSeleccion)
' Variable para calcular el monto final
Dim montoTotal As String
montoTotal = "0"
For i = 0 To detallesPedidoList.Size - 1
Dim detallePedidoObject As detallePedidoObjeto
detallePedidoObject = detallesPedidoList.Get(i)
Dim articuloObject As articuloObjeto
articuloObject = BaseDatos.ObtenerArticuloPorId(detallePedidoObject.articulo)
' Formato de la cantidad
Dim finalCantidad As String
finalCantidad = NumberFormat2(detallePedidoObject.kilos.Trim, 1, 3, 3, True)
Dim longitudCantidad As Int
longitudCantidad = finalCantidad.Length
For j = longitudCantidad + 1 To 7
pagina = pagina & " "
Next
pagina = pagina & finalCantidad & " "
' Formato de la descripcion
Dim finalArticulo As String
If articuloObject.nombre.Trim.Length > 28 Then
finalArticulo = articuloObject.nombre.Trim.SubString2(0,28)
Else
finalArticulo = articuloObject.nombre.Trim
End If
Dim longitudArticulo As Int
longitudArticulo = finalArticulo.Length
Dim numeroRenglones As Int
If longitudArticulo < 8 Then
numeroRenglones = 1
Else If longitudArticulo < 15 Then
numeroRenglones = 2
Else If longitudArticulo < 22 Then
numeroRenglones = 3
Else
numeroRenglones = 4
End If
If longitudArticulo > 7 Then
pagina = pagina & finalArticulo.SubString2(0,7) & " "
Else
pagina = pagina & finalArticulo
For j = longitudArticulo + 1 To 8
pagina = pagina & " "
Next
End If
' Formato del precio unitario
Dim finalPrecio As String
finalPrecio = NumberFormat2(detallePedidoObject.precioUnitario, 1, 2, 2, True)
Dim longitudPrecio As Int
longitudPrecio = finalPrecio.Length
For j = longitudPrecio + 1 To 6
pagina = pagina & " "
Next
pagina = pagina & finalPrecio & " "
' Formato del importe
Dim finalImporte As String
finalImporte = NumberFormat2(detallePedidoObject.subtotal, 1, 2, 2, True)
Dim longitudImporte As Int
longitudImporte = finalImporte.Length
For j = longitudImporte + 1 To 9
pagina = pagina & " "
Next
pagina = pagina & finalImporte & Chr(13)
montoTotal = montoTotal + detallePedidoObject.subtotal
If numeroRenglones > 1 Then
For j = 2 To numeroRenglones
If j = 2 Then
pagina = pagina & " "
If(longitudArticulo > 14) Then
pagina = pagina & finalArticulo.SubString2(7,14) & " " & Chr(13)
Else
pagina = pagina & finalArticulo.SubString(7) & Chr(13)
End If
Else If j = 3 Then
pagina = pagina & " "
If(longitudArticulo > 21) Then
pagina = pagina & finalArticulo.SubString2(14,21) & " " & Chr(13)
Else
pagina = pagina & finalArticulo.SubString(14) & Chr(13)
End If
Else
pagina = pagina & " " & finalArticulo.SubString(21) & Chr(13)
End If
Next
End If
Next
pagina = pagina & "" & Chr(13)
pagina = pagina & " SUBTOTAL: "
' Formato del total
Dim finalSubtotal As String
finalSubtotal = NumberFormat2(montoTotal, 1, 2, 2, True)
Dim longitudSubtotal As Int
longitudSubtotal = finalSubtotal.Length
For j = longitudSubtotal + 1 To 9
pagina = pagina & " "
Next
pagina = pagina & finalSubtotal & Chr(13)
pagina = pagina & " IVA: " & " 0.00" & Chr(13)
pagina = pagina & " TOTAL: "
' Formato del total
Dim finalTotal As String
finalTotal = NumberFormat2(montoTotal, 1, 2, 2, True)
Dim longitudTotal As Int
longitudTotal = finalTotal.Length
For j = longitudTotal + 1 To 9
pagina = pagina & " "
Next
pagina = pagina & finalTotal & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & " ______________________" & Chr(13)
pagina = pagina & " FIRMA DE RECIBIDO" & Chr(13) & Chr(13)
impresora.Initialize(Main.sManager.OutputStream)
impresora.WriteLine(pagina)
impresora.Flush
impresora.Close
'Activity.Finish
StartActivity(Main)
End Sub
Sub Activity_Resume
' Obtenemos el pedido
Dim pedidoObject As pedidoObjeto
pedidoObject = BaseDatos.obtenerPedidoPorId(Main.tablaSeleccion)
' Obtenemos el cliente del pedido
Dim clienteObject As clienteObjeto
clienteObject = BaseDatos.ObtenerClientePorId(pedidoObject.cliente)
Dim pagina As String
Dim impresora As TextWriter
Dim now As Long
now = DateTime.now
DateTime.DateFormat = "dd/MM/yyyy"
pagina = "! U1 JOURNAL" & Chr(13) & Chr(10)
pagina = pagina & "! U1 SETLP 7 0 24" & Chr(13) & Chr(10)
pagina = pagina & "EMBUTIDOS CORONA S.A. DE C.V." & Chr(13)
pagina = pagina & DateTime.Date(now) & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "LUIS ENRIQUE WILLIAMS 865" & Chr(13)
pagina = pagina & "PARQUE INDUSTRIAL BELENES NORTE" & Chr(13)
pagina = pagina & "ZAPOPAN, JALISCO MEXICO" & Chr(13)
pagina = pagina & "C.P. 45150" & Chr(13)
pagina = pagina & "RFC: EC0771130114" & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "CREDITO" & Chr(13)
pagina = pagina & "FACTURADO A:" & Chr(13)
pagina = pagina & clienteObject.nombre.Trim & Chr(13)
pagina = pagina & clienteObject.direccion.Trim & Chr(13)
pagina = pagina & clienteObject.colonia.Trim & Chr(13)
pagina = pagina & clienteObject.ciudad.Trim & Chr(13)
pagina = pagina & "RFC: " & clienteObject.rfc.Trim & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & " CANT DESC P UNI IMPORTE" & Chr(13)
' Obtenemos los detalles del pedido
Dim detallesPedidoList As List
detallesPedidoList = BaseDatos.ObtenerDetallesPedido(Main.tablaSeleccion)
' Variable para calcular el monto final
Dim montoTotal As String
montoTotal = "0"
For i = 0 To detallesPedidoList.Size - 1
Dim detallePedidoObject As detallePedidoObjeto
detallePedidoObject = detallesPedidoList.Get(i)
Dim articuloObject As articuloObjeto
articuloObject = BaseDatos.ObtenerArticuloPorId(detallePedidoObject.articulo)
' Formato de la cantidad
Dim finalCantidad As String
finalCantidad = NumberFormat2(detallePedidoObject.kilos.Trim, 1, 3, 3, True)
Dim longitudCantidad As Int
longitudCantidad = finalCantidad.Length
For j = longitudCantidad + 1 To 7
pagina = pagina & " "
Next
pagina = pagina & finalCantidad & " "
' Formato de la descripcion
Dim finalArticulo As String
If articuloObject.nombre.Trim.Length > 28 Then
finalArticulo = articuloObject.nombre.Trim.SubString2(0,28)
Else
finalArticulo = articuloObject.nombre.Trim
End If
Dim longitudArticulo As Int
longitudArticulo = finalArticulo.Length
Dim numeroRenglones As Int
If longitudArticulo < 8 Then
numeroRenglones = 1
Else If longitudArticulo < 15 Then
numeroRenglones = 2
Else If longitudArticulo < 22 Then
numeroRenglones = 3
Else
numeroRenglones = 4
End If
If longitudArticulo > 7 Then
pagina = pagina & finalArticulo.SubString2(0,7) & " "
Else
pagina = pagina & finalArticulo
For j = longitudArticulo + 1 To 8
pagina = pagina & " "
Next
End If
' Formato del precio unitario
Dim finalPrecio As String
finalPrecio = NumberFormat2(detallePedidoObject.precioUnitario, 1, 2, 2, True)
Dim longitudPrecio As Int
longitudPrecio = finalPrecio.Length
For j = longitudPrecio + 1 To 6
pagina = pagina & " "
Next
pagina = pagina & finalPrecio & " "
' Formato del importe
Dim finalImporte As String
finalImporte = NumberFormat2(detallePedidoObject.subtotal, 1, 2, 2, True)
Dim longitudImporte As Int
longitudImporte = finalImporte.Length
For j = longitudImporte + 1 To 9
pagina = pagina & " "
Next
pagina = pagina & finalImporte & Chr(13)
montoTotal = montoTotal + detallePedidoObject.subtotal
If numeroRenglones > 1 Then
For j = 2 To numeroRenglones
If j = 2 Then
pagina = pagina & " "
If(longitudArticulo > 14) Then
pagina = pagina & finalArticulo.SubString2(7,14) & " " & Chr(13)
Else
pagina = pagina & finalArticulo.SubString(7) & Chr(13)
End If
Else If j = 3 Then
pagina = pagina & " "
If(longitudArticulo > 21) Then
pagina = pagina & finalArticulo.SubString2(14,21) & " " & Chr(13)
Else
pagina = pagina & finalArticulo.SubString(14) & Chr(13)
End If
Else
pagina = pagina & " " & finalArticulo.SubString(21) & Chr(13)
End If
Next
End If
Next
pagina = pagina & "" & Chr(13)
pagina = pagina & " SUBTOTAL: "
' Formato del total
Dim finalSubtotal As String
finalSubtotal = NumberFormat2(montoTotal, 1, 2, 2, True)
Dim longitudSubtotal As Int
longitudSubtotal = finalSubtotal.Length
For j = longitudSubtotal + 1 To 9
pagina = pagina & " "
Next
pagina = pagina & finalSubtotal & Chr(13)
pagina = pagina & " IVA: " & " 0.00" & Chr(13)
pagina = pagina & " TOTAL: "
' Formato del total
Dim finalTotal As String
finalTotal = NumberFormat2(montoTotal, 1, 2, 2, True)
Dim longitudTotal As Int
longitudTotal = finalTotal.Length
For j = longitudTotal + 1 To 9
pagina = pagina & " "
Next
pagina = pagina & finalTotal & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & "" & Chr(13)
pagina = pagina & " ______________________" & Chr(13)
pagina = pagina & " FIRMA DE RECIBIDO" & Chr(13) & Chr(13)
impresora.Initialize(Main.sManager.OutputStream)
impresora.WriteLine(pagina)
impresora.Flush
impresora.Close
'Activity.Finish
StartActivity(Main)
End Sub