diff --git a/Files/login.bal b/Files/login.bal index 9389d0c..549947a 100644 Binary files a/Files/login.bal and b/Files/login.bal differ diff --git a/Files/principal.bal b/Files/principal.bal index ac3111d..182ec26 100644 Binary files a/Files/principal.bal and b/Files/principal.bal differ diff --git a/Lanterna2.b4a b/Lanterna2.b4a index 4a7c25f..3038834 100644 --- a/Lanterna2.b4a +++ b/Lanterna2.b4a @@ -53,23 +53,25 @@ FileGroup8=Default Group FileGroup9=Default Group Group=Default Group Library1=appupdating -Library10=randomaccessfile -Library11=runtimepermissions -Library12=scrollview2d -Library13=serial -Library14=sql -Library15=stringutils -Library16=wobblemenu -Library17=xui -Library18=b4xtable -Library2=byteconverter -Library3=compressstrings -Library4=core -Library5=fileprovider -Library6=javaobject -Library7=json -Library8=okhttputils2 -Library9=preoptimizedclv +Library10=okhttputils2 +Library11=preoptimizedclv +Library12=randomaccessfile +Library13=runtimepermissions +Library14=scrollview2d +Library15=serial +Library16=sql +Library17=stringutils +Library18=wobblemenu +Library19=xui +Library2=b4xtable +Library20=jsch +Library3=byteconverter +Library4=compressstrings +Library5=core +Library6=fileprovider +Library7=javaobject +Library8=json +Library9=net ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~SetApplicationAttribute(android:exported, "true")~\n~~\n~AddApplicationText(~\n~ )~\n~CreateResource(xml, provider_paths,~\n~ ~\n~)~\n~~\n~ 'Para que se registre para abrir bases de datos~\n~ AddActivityText(main,~\n~~\n~~\n~~\n~~\n~~\n~)~\n~~\n~~\n~'APP UPDATING~\n~AddActivityText(main,~\n~~\n~~\n~~\n~~\n~~\n~~\n~~\n~~\n~)~\n~AddManifestText(~\n~)~\n~AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~)~\n~CreateResource(xml, provider_paths,~\n~~\n~ ~\n~ ~\n~ ~\n~~\n~)~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK) Module1=appUpdater Module2=DBRequestManager @@ -81,14 +83,14 @@ Module7=Starter Module8=Subs Module9=updateAvailable NumberOfFiles=26 -NumberOfLibraries=18 +NumberOfLibraries=20 NumberOfModules=9 Version=12.8 @EndOfDesignText@ #Region Project Attributes #ApplicationLabel: Lanterna #VersionCode: 1 - #VersionName: 4.07.10 + #VersionName: 4.07.16 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: landscape #CanInstallToExternalStorage: False @@ -156,16 +158,21 @@ Sub Activity_Create(FirstTime As Boolean) Subs.revisaBD p_login.Width = Activity.Width p_login.Height = Activity.Height - Subs.agregaColumna("cat_gunaprod", "CAT_PT_DESC", "TEXT") - Subs.agregaColumna("cat_gunaprod", "CAT_PS_DESC", "TEXT") - Subs.agregaColumna("cat_gunaprod", "CAT_PS_DESC", "TEXT") - Subs.agregaColumna("cat_gunaprod", "CAT_GP_FECHA", "TEXT") - Subs.agregaColumna("cat_gunaprod", "CAT_GP_FECHA_MOD", "TEXT") - Subs.agregaColumna("cat_gunaprod", "CAT_GP_ORDEN_GRUPOS", "TEXT") -' Starter.skmt.ExecNonQuery("delete from cuentaa") -' Starter.skmt.ExecNonQuery("insert into cuentaa (cuenta) values ('123456')") - Starter.skmt.ExecNonQuery("delete from cat_almacen") - Starter.skmt.ExecNonQuery("insert into cat_almacen (id_almacen) values ('1')") + Try + Subs.agregaColumna("cat_gunaprod", "CAT_PT_DESC", "TEXT") + Subs.agregaColumna("cat_gunaprod", "CAT_PS_DESC", "TEXT") + Subs.agregaColumna("cat_gunaprod", "CAT_PS_DESC", "TEXT") + Subs.agregaColumna("cat_gunaprod", "CAT_GP_FECHA", "TEXT") + Subs.agregaColumna("cat_gunaprod", "CAT_GP_FECHA_MOD", "TEXT") + Subs.agregaColumna("cat_gunaprod", "CAT_GP_ORDEN_GRUPOS", "TEXT") +' Starter.skmt.ExecNonQuery("delete from cuentaa") +' Starter.skmt.ExecNonQuery("insert into cuentaa (cuenta) values ('123456')") + Starter.skmt.ExecNonQuery("delete from cat_almacen") + Starter.skmt.ExecNonQuery("insert into cat_almacen (id_almacen) values ('1')") + Catch + Log(LastException) + End Try + l_version.Text = Application.VersionName p_configuracion.Height = Activity.Height : p_configuracion.width = Activity.width reqManager.Initialize(Me, Starter.DBReqServer) @@ -293,6 +300,16 @@ Private Sub i_conf_Click Do While z.NextRow If z.GetString("CAT_VA_VALOR") = 1 Then cb_impresionActiva.Checked = True Loop + + 'Esto para cambiar los tamaños y posiciones para pantallas chicas (celuar). + If GetDeviceLayoutValues.ApproximateScreenSize < 6 Then + Label3.Top = 2dip + Label3.BringToFront + p_server.Top = 20dip + p_botones.BringToFront + p_botones.Top = p_server.Top + p_server.Height - 10dip + End If + End Sub Private Sub b_cargaProductos_Click @@ -481,4 +498,18 @@ End Sub 'appUpdater - Ocultamos el anuncio de que se esta descargando el nuevo apk Sub ocultaProgreso ProgressDialogHide -End Sub \ No newline at end of file +End Sub + +Private Sub i_logo_LongClick + 'ftp was previously initialized and its event name was set to ftp: +' ftp.Initialize("ftp", "access986911787.webspace-data.io", 22, "u114586321", "FTP&R3sp4ld0sK3ym0n") + Private theFile As String = "kmt.db" + DateTime.DateFormat = "yyyymmdd_HHmmss" + +' Wait For (sf) FTP_UploadCompleted (ServerPath As String, Success As Boolean) +' If Success Then +' Log("file was uploaded successfully") +' Else +' Log("Error uploading file") +' End If +End Sub diff --git a/Lanterna2.b4a.meta b/Lanterna2.b4a.meta index 07a1807..4daa87a 100644 --- a/Lanterna2.b4a.meta +++ b/Lanterna2.b4a.meta @@ -18,16 +18,16 @@ ModuleBreakpoints6= ModuleBreakpoints7= ModuleBreakpoints8= ModuleBreakpoints9= -ModuleClosedNodes0= +ModuleClosedNodes0=4 ModuleClosedNodes1= ModuleClosedNodes2= ModuleClosedNodes3= ModuleClosedNodes4= ModuleClosedNodes5= -ModuleClosedNodes6= +ModuleClosedNodes6=3,6 ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=Visual Designer,principal.bal,-100,1,Principal,b_imp_Click,1793,0,Principal,b_resumen_Click,4316,0,Principal,b_impAB_Click,2847,6,Subs,revisaUUG,358,0,Subs,revisaFLP,385,0,Subs,agregaColumna,1259,0,Principal,Process_Globals,7,0,Principal,b_reimprimirTicket_Click,4456,0,Principal,imprimeResumenGrupos,2005,6,Principal,b_imp2_Click,1954,0 +NavigationStack=Principal,Activity_Create,251,0,Principal,b_pagoCerrar_Click,1515,0,Principal,cb_opcionEfectivo_CheckedChange,3563,0,Visual Designer,principal.bal,-100,5,Subs,traeTotalTicketActual_PT,1164,0,Subs,traeTotalTicketActual_P,1187,0,Principal,b_impAB_Click,2887,6,Principal,l_prods_Click,345,0,Principal,actualizaProductos,4149,0,Principal,imprimeResumenGrupos,2236,6,Main,i_conf_Click,206,0 SelectedBuild=0 -VisibleModules=7,6,8 +VisibleModules=7,6,8,1 diff --git a/Principal.bas b/Principal.bas index 987f1b6..3c11c0e 100644 --- a/Principal.bas +++ b/Principal.bas @@ -30,7 +30,8 @@ Sub Process_Globals Private tipoPago As String = "VENTA" Dim n2t As numeroATexto Dim n As Int - dim pagoPropina as string + Dim pagoPropina As String + Dim sftp1 As SFtp End Sub Sub Globals @@ -339,12 +340,16 @@ Sub Activity_Create(FirstTime As Boolean) Starter.skmt.ExecNonQuery($"update pedido_ticket set PT_PAGO_PROPINA = 'Amex' where PT_TARJETA like '%American%'"$) Starter.skmt.ExecNonQuery($"update pedido_ticket set PT_PAGO2 = 'Amex' where PT_TARJETA like '%American%'"$) Starter.skmt.ExecNonQuery($"update pedido_ticket set PT_PAGO2 = 'Amex' where PT_PAGO2 like '%American%'"$) + If FirstTime Then + sftp1.Initialize("sftp1", "u114586321", "FTP&R3sp4ld0sK3ym0n", "access986911787.webspace-data.io", 22) + sftp1.SetKnownHostsStore(File.DirInternal, "hosts.txt") + End If End Sub Sub l_prods_Click Private tlbl As Label = Sender ' Log(tlbl.text) -' Log(tlbl.tag) + Log(tlbl.tag) tlbl.Color = Colors.LightGray Sleep(200) tlbl.Color = Colors.white @@ -481,6 +486,7 @@ Sub Activity_Resume Loop Starter.imprimirTicket = ia ' Log(Starter.imprimirTicket) + sftp1.Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) @@ -1611,6 +1617,8 @@ Private Sub b_cierraAdmin_Click Else ToastMessageShow("¡Es necesario que NO haya mesas abiertas para realizar el cierre!", True) End If + DateTime.DateFormat = "yyMMdd_HHmmss" + sftp1.UploadFile(File.DirAssets, "kmt.db", $"/Lanterna/kmt_Lanterna_${DateTime.Date(DateTime.Now)}.db"$) End Sub Private Sub b_cierraAdmin_LongClick @@ -1913,10 +1921,10 @@ Sub imprimeResumenMesas ' cs.color(Colors.RGB(1,127,1)).Append($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$).popall ' If imprimirAqui Then Printer1.WriteString($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$) If totalEfectivo > 0 Then - cs.color(Colors.RGB(1,127,1)).Append($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$).popall - If imprimirAqui Then Printer1.WriteString($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$) - cs.color(Colors.RGB(1,127,1)).Append($"Total Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$).popall - If imprimirAqui Then Printer1.WriteString($"Total Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$) + cs.color(Colors.RGB(1,127,1)).Append($"${CRLF}Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$).popall + If imprimirAqui Then Printer1.WriteString($"${CRLF}Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$) + cs.color(Colors.RGB(1,127,1)).Append($"Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$).popall + If imprimirAqui Then Printer1.WriteString($"Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$) Else cs.color(Colors.RGB(1,127,1)).Append($"${CRLF}Total: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$).popall If imprimirAqui Then Printer1.WriteString($"${CRLF}Total: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$) @@ -2022,7 +2030,7 @@ Sub imprimeResumenGrupos Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$) ' Log(c.RowCount) ' If c.RowCount = 0 Then 'Si no hay mesas abiertas entonces ... - Private c As Cursor = Starter.skmt.ExecQuery("select distinct PE_PRONOMBRE, PE_PROID, CAT_GP_TIPO2, CAT_GP_CLASIF, sum(pe_cant) as cuantos, sum(pe_costo_tot) as monto from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' group by CAT_GP_TIPO2, PE_PRONOMBRE order by CAT_GP_ORDEN_GRUPOS, CAT_GP_TIPO2, PE_PRONOMBRE") 'Este query quita los "Consumo de alimentos", que son los tickets que se generan con el multi-ticket, porque en CAT_GUNAPROD no existe el ID CDA01. + Private c As Cursor = Starter.skmt.ExecQuery("select distinct PE_PRONOMBRE, PE_PROID, CAT_GP_TIPO2, CAT_GP_CLASIF, sum(pe_cant) as cuantos, sum(pe_costo_tot) as monto from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and PE_PROID not like 'CDA%' and PE_PROID not like 'DESC%' group by CAT_GP_TIPO2, PE_PRONOMBRE order by CAT_GP_ORDEN_GRUPOS, CAT_GP_TIPO2, PE_PRONOMBRE") 'Este query quita los "Consumo de alimentos", que son los tickets que se generan con el multi-ticket, porque en CAT_GUNAPROD no existe el ID CDA01. ' Log(c.RowCount) If c.RowCount > 0 Then c.Position = 0 @@ -2157,7 +2165,9 @@ Sub imprimeResumenGrupos Private laCat, laCatAnt As String = "" Private cuantos As String = 0 - Private grps As ResultSet = Starter.skmt.ExecQuery($"select PE_MESA, PE_PRONOMBRE, PE_TIPO, ifnull(PE_DESC,0) as PE_DESC,PE_COSTO_TOT, PE_CANT, CAT_GP_TIPO, CAT_GP_TIPO2, CAT_GP_ORDEN_GRUPOS from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and pe_ticket <> 'null' order by CAT_GP_ORDEN_GRUPOS, PE_PRONOMBRE"$) +' Private grps As ResultSet = Starter.skmt.ExecQuery($"select distinct PE_MESA, PE_PRONOMBRE, PE_TIPO, ifnull(PE_DESC,0) as PE_DESC,PE_COSTO_TOT, PE_CANT, CAT_GP_TIPO, CAT_GP_TIPO2, CAT_GP_ORDEN_GRUPOS from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and pe_ticket <> 'null' and PE_PROID not like 'CDA%' and PE_PROID not like 'DESC%' order by CAT_GP_ORDEN_GRUPOS, PE_PRONOMBRE"$) + Private grps As ResultSet = Starter.skmt.ExecQuery($"Select PE_MESA, PE_TICKET, PE_TIPO, PE_TIPO2, ifnull(PE_DESC,0) as PE_DESC, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, CAT_GP_TIPO, CAT_GP_TIPO2, PE_ORIGEN, CAT_GP_ORDEN_GRUPOS from PEDIDO join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_ORIGEN Is Null order by CAT_GP_ORDEN_GRUPOS, PE_PRONOMBRE"$) + Private elProd, prodAnt As String Private grpsCant As String = "0" Private grpsProdCant As String = "0" @@ -2169,6 +2179,8 @@ Sub imprimeResumenGrupos Private mGrupos As Map mProds.Initialize mGrupos.Initialize + Private desc As String = "0" + Private st As String = "0" Do While grps.NextRow Private laCat As String = grps.GetString("CAT_GP_TIPO2") ' If laCat <> laCatAnt Then @@ -2180,16 +2192,23 @@ Sub imprimeResumenGrupos grpsProdCant = 0 grpsProdMonto = 0 End If - Log("") 'NO BORRAR O COMENTAR ESTE LOG, PORQUE MANDA ERROR!!!! ' Log(">>>>> " & n2(0)) elProd = grps.GetString("PE_PRONOMBRE") grpsProdCant = grpsProdCant + grps.GetString("PE_CANT") - Private elMonto2 As String = grps.GetString("PE_COSTO_TOT") +' Private elMonto2 As String = grps.GetString("PE_COSTO_TOT") +' Log("################ |" & grps.GetString("CAT_GP_TIPO2") & "| - " & grps.GetString("PE_DESC")) +' If elProd.StartsWith("MED") Then Log("MEDIAS - " & elProd) + desc = "0" If grps.GetString("CAT_GP_TIPO2") = "ALIMENTOS" And grps.GetString("PE_DESC") > 0 Then - elMonto2 = elMonto2 - ((grps.GetString("PE_DESC")/100) * elMonto2) +' elMonto2 = elMonto2 - ((grps.GetString("PE_DESC")/100) * elMonto2) + desc = grps.GetString("PE_DESC") / 100 +' Log("Hacemos descuento: " & elMonto2) End If -' Log(elMonto2) - grpsProdMonto = grpsProdMonto + elMonto2 + Private elSubTIndividual As String = grps.GetString("PE_COSTOU") - (grps.GetString("PE_COSTOU") * desc) + Private st2 As String = Ceil(elSubTIndividual) * grps.GetString("PE_CANT") +' st = st + st2 +' Log($"${elProd}|${elMonto2}|${st}|${st2}"$) + grpsProdMonto = grpsProdMonto + st2 'Ceil(elMonto2) Private m As Map = CreateMap("prod":elProd, "grupo":laCat, "cant":grpsProdCant,"monto":grpsProdMonto) mProds.Put(elProd, m) prodAnt = grps.GetString("PE_PRONOMBRE") @@ -2230,28 +2249,38 @@ Sub imprimeResumenGrupos totMontoBebidas = totMontoBebidas + Ceil(grpsMonto) totCantBebidas = totCantBebidas + grpsCant End If - If imprimirAqui Then Printer1.WriteString($"Total ${laCatAnt}${primerEspacio}${grpsCant}..$${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"Total ${laCatAnt}${primerEspacio}${grpsCant} .. $${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$) Log($" Total ${laCatAnt}: .......... "$ & grpsCant & " ..... " & NumberFormat2(grpsMonto, 1, 0, 0, True)) - cs.Color(Colors.DarkGray).Append($"Total ${laCatAnt}${primerEspacio}${grpsCant}..$${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop - + cs.Color(Colors.DarkGray).Append($"Total ${laCatAnt}${primerEspacio.SubString(primerEspacio.Length/3)}${grpsCant} ... $${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop End If grpsCant = 0 grpsMonto = 0 ' Log($"** ${tm.Get("grupo")} **"$) - + If imprimirAqui Then Printer1.WriteString(Printer1.BOLD) If imprimirAqui Then Printer1.WriteString("** " & tm.Get("grupo") & " **" & CRLF) + If imprimirAqui Then Printer1.WriteString(Printer1.NOBOLD) cs.Color(Colors.DarkGray).Bold.Append("** " & tm.Get("grupo") & " **" & CRLF).pop Log("** " & tm.Get("grupo") & " **") End If - - Private primerEspacioLargo As Int = 30 - laCat.Length - (cuantos.Length + 1) - 6 + Private primerEspacioLargo As Int = 45 - elNom.Length - (tm.Get("cant").As(String).Length + 1) - 8 +' Private primerEspacioLargo As Int = 30 - elNom.Length - (tm.Get("cant").As(String).Length + 1) - 8 'Para impresora vieja. Private primerEspacio As String = "" For n = 1 To primerEspacioLargo primerEspacio = primerEspacio & "." Next - If imprimirAqui Then Printer1.WriteString($"${elNom}${primerEspacio}${tm.Get("cant")}..$${tm.Get("monto")} ${CRLF}"$) - cs.Color(Colors.DarkGray).Append($"${elNom} ..... ${tm.Get("cant")}..$${tm.Get("monto")} ${CRLF}"$).pop - Log($" ${elNom}${primerEspacio}${tm.Get("cant")}..$${tm.Get("monto")} ${CRLF}"$) +' Log($"${primerEspacioLargo} - ${primerEspacio.Length}"$) + If imprimirAqui Then Printer1.WriteString($"${elNom}${primerEspacio}${tm.Get("cant")} ... $${NumberFormat2(tm.Get("monto"),1,0,0,True)} ${CRLF}"$) + +' Private cuantos As String = rsm.GetString("cuantos") +' Private primerEspacioLargo As Int = 30 - laCat.Length - (cuantos.Length + 1) - 6 +' Private primerEspacio As String = "" +' For n = 1 To primerEspacioLargo +' primerEspacio = primerEspacio & "." +' Next +' If imprimirAqui Then Printer1.WriteString($"${laCat}${primerEspacio}${cuantos}..$${monto} ${CRLF}"$) + + cs.Color(Colors.DarkGray).Append($"${elNom}${primerEspacio.SubString(primerEspacio.Length/3)}${tm.Get("cant")} ... ${tm.Get("monto")} ${CRLF}"$).pop + Log($" ${elNom}${primerEspacio}${tm.Get("cant")} ... ${tm.Get("monto")} ${CRLF}"$) @@ -2262,9 +2291,9 @@ Sub imprimeResumenGrupos Next totMontoBebidas = totMontoBebidas + grpsMonto totCantBebidas = totCantBebidas + grpsCant - If imprimirAqui Then Printer1.WriteString($"${laCatAnt}${primerEspacio}${grpsCant}..$${grpsMonto} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"${laCatAnt}${primerEspacio}${grpsCant} .. $${grpsMonto} ${CRLF}"$) Log($"${laCatAnt}: .......... "$ & grpsCant & " ..... " & NumberFormat2(grpsMonto, 1, 0, 0, True)) - cs.Color(Colors.DarkGray).Append($"${laCatAnt}${primerEspacio}${grpsCant}..$${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"${laCatAnt}${primerEspacio}${grpsCant}.. $${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop ' Log(grpsCant & "|" & grpsMonto) @@ -2292,10 +2321,10 @@ Sub imprimeResumenGrupos Private totalComensales As Int = 0 If imprimirAqui Then Printer1.WriteString($"${CRLF}"$) Printer1.WriteString(Printer1.BOLD) - If imprimirAqui Then Printer1.WriteString($"*** PAGOS *** ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"*** PAGOS SIN PROPINAS *** ${CRLF}"$) Printer1.WriteString(Printer1.NOBOLD) - cs.Color(Colors.red).Append($"** PAGOS **${CRLF}"$).pop - Log("*** PAGOS ***") + cs.Color(Colors.red).Append($"** PAGOS SIN PROPINAS **${CRLF}"$).pop + Log("*** PAGOS SIN PROPINAS ***") Private totalPagos As String = 0 For i = 0 To pgs.RowCount - 1 pgs.Position = i @@ -2342,13 +2371,13 @@ Sub imprimeResumenGrupos ' Log($"########## ${elPago}, ${monto}, ${propAmex}, ${propMifel} "$) Log(elPago) If elPago = "Amex" Then elPago = "Amex" - If imprimirAqui Then Printer1.WriteString($"${elPago}${primerEspacio}..${NumberFormat2(pgs.GetString("monto"), 1, 0, 0, True)} ${CRLF}"$) - cs.Color(Colors.DarkGray).Append($"${elPago}${primerEspacio}.. ${NumberFormat2(pgs.GetString("monto"), 1, 0, 0, True)} ${CRLF}"$).pop - Log($"${elPago}${primerEspacio}..${NumberFormat2(pgs.GetString("monto"), 1, 0, 0, True)} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"${elPago}${primerEspacio}.. $${NumberFormat2(pgs.GetString("monto"), 1, 0, 0, True)} ${CRLF}"$) + cs.Color(Colors.DarkGray).Append($"${elPago}${primerEspacio}.. $${NumberFormat2(pgs.GetString("monto"), 1, 0, 0, True)} ${CRLF}"$).pop + Log($"${elPago}${primerEspacio}.. $${NumberFormat2(pgs.GetString("monto"), 1, 0, 0, True)} ${CRLF}"$) totalPagos = totalPagos + monto Next totalPagos = NumberFormat2(totalPagos, 1, 0, 0, True) - If imprimirAqui Then Printer1.WriteString($"TOTAL PAGOS ...........${totalPagos} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"TOTAL PAGOS ........... $${totalPagos} ${CRLF}"$) cs.Color(Colors.DarkGray).Append($"TOTAL PAGOS: ........... ${totalPagos} ${CRLF}"$).pop Log($"TOTAL PAGOS: .........${i}.. ${totalPagos} ${CRLF}"$) @@ -2524,6 +2553,8 @@ Sub b_impAB_Click la_cuenta.Initialize("2") b_imp.Enabled = False ProgressDialogShow("Imprimiendo, un momento ...") + + If imprimirAqui Then Printer1.DisConnect If Not(Printer1.IsConnected) Then @@ -2553,63 +2584,73 @@ Sub b_impAB_Click End If Printer1.Reset End If - Try - DateTime.DateFormat = "yyyymmdd" - sDate = DateTime.Date(DateTime.Now) - Printer1.WriteString(Printer1.BOLD) - If imprimirAqui Then Printer1.WriteString("LA LANTERNA RISTORANTE" & CRLF) - Printer1.WriteString(Printer1.NOBOLD) - DateTime.DateFormat = "MM/dd/yyyy" - sDate = DateTime.Date(DateTime.Now) - sTime = DateTime.Time(DateTime.Now) - Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$) + +' If imprimirAqui Then +' Printer1.DisConnect +' If Not(Printer1.IsConnected) Then +' If Starter.logger Then Log("conectando 1") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) +'' Sleep(1000) +' cont = cont + 1 +' If cont = 7 Then Printer1.Connect 'Tratamos de reconectar +' If cont > 15 Then impresoraConectada = True +' Loop +'' Sleep(500) +' impresoraConectada = False +' Else +' If Starter.logger Then Log("conectando 2") +' Printer1.Connect +' Private cont As Int = 0 +' Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) +'' Sleep(1000) +' cont = cont + 1 +' If cont = 2 Then Printer1.Connect +' If cont > 4 Then impresoraConectada = True +' Loop +'' Sleep(500) +' impresoraConectada = False +' End If +' Printer1.Reset +' End If + DateTime.DateFormat = "yyyymmdd" + sDate = DateTime.Date(DateTime.Now) + If imprimirAqui Then Printer1.WriteString(Printer1.BOLD) + If imprimirAqui Then Printer1.WriteString("LA LANTERNA RISTORANTE" & CRLF) + If imprimirAqui Then Printer1.WriteString(Printer1.NOBOLD) + DateTime.DateFormat = "MM/dd/yyyy" + sDate = DateTime.Date(DateTime.Now) + sTime = DateTime.Time(DateTime.Now) + Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$) ' Log(c.RowCount) + Try 'RESUMEN ' LogColor("sleeping ....", Colors.Magenta) ' If imprimirAqui Then Sleep(4000) - Private rsm As Cursor = Starter.skmt.ExecQuery($"select distinct CAT_GP_TIPO2, sum(pe_cant) as cuantos, sum(pe_costo_tot) as monto from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and pe_ticket <> 'null' group by CAT_GP_TIPO2 order by CAT_GP_ORDEN_GRUPOS, CAT_GP_TIPO2"$) 'Este query quita los "Consumo de alimentos", que son los tickets que se generan con el multi-ticket, porque en CAT_GUNAPROD no existe el ID CDA01. + Private rsm As Cursor = Starter.skmt.ExecQuery($"select distinct CAT_GP_TIPO2, sum(pe_cant) as cuantos, sum(pe_costo_tot) as monto from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and pe_ticket <> 'null' and PE_PROID not like 'CDA%' and PE_PROID not like 'DESC%' group by CAT_GP_TIPO2 order by CAT_GP_ORDEN_GRUPOS, CAT_GP_TIPO2"$) 'Este query quita los "Consumo de alimentos", que son los tickets que se generan con el multi-ticket, porque en CAT_GUNAPROD no existe el ID CDA01. ' Log(rsm.RowCount) If rsm.RowCount > 0 Then - Printer1.WriteString(Printer1.BOLD) + If imprimirAqui Then Printer1.WriteString(Printer1.BOLD) If imprimirAqui Then Printer1.WriteString($"*** RESUMEN *** ${CRLF}"$) Log($"*** RESUMEN ***${CRLF}"$) cs.Color(Colors.red).Append($"** RESUMEN **${CRLF}"$).pop - Printer1.WriteString(Printer1.NOBOLD) + If imprimirAqui Then Printer1.WriteString(Printer1.NOBOLD) Private totAlimentos As String = "0" Private totBebidas As String = "0" Private cuantosAlimentos As String = "0" Private cuantosBebidas As String = "0" Private laCat, laCatAnt As String = "" Private cuantos As String = 0 -' For i = 0 To rsm.RowCount - 1 -' rsm.Position = i -' Private laCat As String = rsm.GetString("CAT_GP_TIPO2") -' If laCat.Length > 20 Then laCat = laCat.SubString2(0, 20) - '' Log($"${rsm.Position} - ${laCat.Length} - ${laCat}"$) -' Private monto As String = NumberFormat2(rsm.GetString("monto"), 1, 0, 0, True) -' -' If rsm.GetString("CAT_GP_TIPO2") = "ALIMENTOS" Then -' totAlimentos = totAlimentos + rsm.GetString("monto") -' cuantosAlimentos = cuantosAlimentos + rsm.GetString("cuantos") -' Else -' totBebidas = totBebidas + rsm.GetString("monto") -' cuantosBebidas = cuantosBebidas + rsm.GetString("cuantos") -' End If -' -' Private cuantos As String = rsm.GetString("cuantos") -' Private primerEspacioLargo As Int = 30 - laCat.Length - (cuantos.Length + 1) - 6 -' Private primerEspacio As String = "" -' For n = 1 To primerEspacioLargo -' primerEspacio = primerEspacio & "." -' Next -' If imprimirAqui Then Printer1.WriteString($"${laCat}${primerEspacio}${cuantos}..$${monto} ${CRLF}"$) -' cs.Color(Colors.DarkGray).Append($"${laCat}${primerEspacio}${cuantos}..$${monto} ${CRLF}"$).pop -' Log($"${laCat}${primerEspacio}${cuantos}..$${monto} ${CRLF}"$) -' Next - Private grps As ResultSet = Starter.skmt.ExecQuery($"select PE_MESA, PE_PRONOMBRE, PE_TIPO, ifnull(PE_DESC,0) as PE_DESC,PE_COSTO_TOT, PE_CANT, CAT_GP_TIPO, CAT_GP_TIPO2, CAT_GP_ORDEN_GRUPOS from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and pe_ticket <> 'null' order by CAT_GP_ORDEN_GRUPOS, PE_PRONOMBRE"$) +' Private grps As ResultSet = Starter.skmt.ExecQuery($"select distinct PE_MESA, PE_PRONOMBRE, PE_TIPO, ifnull(PE_DESC,0) as PE_DESC,PE_COSTO_TOT, PE_CANT, CAT_GP_TIPO, CAT_GP_TIPO2, CAT_GP_ORDEN_GRUPOS from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_TIPO <> 'MULTI-TICKET' and pe_ticket <> 'null' and PE_PROID not like 'CDA%' and PE_PROID not like 'DESC%' order by CAT_GP_ORDEN_GRUPOS, PE_PRONOMBRE"$) + + Private grps As ResultSet = Starter.skmt.ExecQuery($"Select PE_MESA, PE_TICKET, PE_TIPO, PE_TIPO2, ifnull(PE_DESC,0) as PE_DESC, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, CAT_GP_TIPO, CAT_GP_TIPO2, PE_ORIGEN, CAT_GP_ORDEN_GRUPOS from PEDIDO join CAT_GUNAPROD on cat_gp_id = PE_PROID where PE_TIPO <> 'VENTA' and PE_ORIGEN Is Null order by CAT_GP_ORDEN_GRUPOS, PE_PRONOMBRE"$) + + + Private elProd, prodAnt As String Private grpsCant As String = "0" Private grpsProdCant As String = "0" @@ -2621,6 +2662,8 @@ Sub b_impAB_Click Private mGrupos As Map mProds.Initialize mGrupos.Initialize + Private desc As String = "0" + Private st As String = "0" Do While grps.NextRow Private laCat As String = grps.GetString("CAT_GP_TIPO2") ' If laCat <> laCatAnt Then @@ -2632,22 +2675,26 @@ Sub b_impAB_Click grpsProdCant = 0 grpsProdMonto = 0 End If - Log("") 'NO BORRAR O COMENTAR ESTE LOG, PORQUE MANDA ERROR!!!! ' Log(">>>>> " & n2(0)) elProd = grps.GetString("PE_PRONOMBRE") grpsProdCant = grpsProdCant + grps.GetString("PE_CANT") - Private elMonto2 As String = grps.GetString("PE_COSTO_TOT") +' Private elMonto2 As String = grps.GetString("PE_COSTO_TOT") + desc = "0" If grps.GetString("CAT_GP_TIPO2") = "ALIMENTOS" And grps.GetString("PE_DESC") > 0 Then - elMonto2 = elMonto2 - ((grps.GetString("PE_DESC")/100) * elMonto2) +' elMonto2 = elMonto2 - ((grps.GetString("PE_DESC")/100) * elMonto2) + desc = grps.GetString("PE_DESC") / 100 +' Log("Hacemos descuento: " & elMonto2) End If -' Log(elMonto2) - grpsProdMonto = grpsProdMonto + elMonto2 + Private elSubTIndividual As String = grps.GetString("PE_COSTOU") - (grps.GetString("PE_COSTOU") * desc) + Private st2 As String = Ceil(elSubTIndividual) * grps.GetString("PE_CANT") +' st = st + st2 +' Log($"${elProd}|${elMonto2}|${st}|${st2}"$) + grpsProdMonto = grpsProdMonto + st2 'Ceil(elMonto2) Private m As Map = CreateMap("prod":elProd, "grupo":laCat, "cant":grpsProdCant,"monto":grpsProdMonto) mProds.Put(elProd, m) prodAnt = grps.GetString("PE_PRONOMBRE") laCatAnt = laCat Loop - ' Log(mProds.Size) laCat = "" Private grpsMontoTotal As String @@ -2676,10 +2723,10 @@ Sub b_impAB_Click totMontoBebidas = totMontoBebidas + Ceil(grpsMonto) totCantBebidas = totCantBebidas + grpsCant End If - If imprimirAqui Then Printer1.WriteString($"${laCatAnt}${primerEspacio}${grpsCant}..$${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$) - Log($"${laCatAnt}: .......... "$ & grpsCant & " ..... " & NumberFormat2(grpsMonto, 1, 0, 0, True)) + If imprimirAqui Then Printer1.WriteString($"${laCatAnt}${primerEspacio}${grpsCant} .. $${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$) + Log($"${laCatAnt}: .......... "$ & grpsCant & " ..... $" & NumberFormat2(grpsMonto, 1, 0, 0, True)) ' cs.Color(Colors.DarkGray).Append($"${laCatAnt}: .......... "$ & grpsCant & " ..... " & NumberFormat2(grpsMonto, 1, 0, 0, True) & CRLF).pop - cs.Color(Colors.DarkGray).Append($"${laCatAnt}${primerEspacio}${grpsCant}..$${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"${laCatAnt}${primerEspacio}${grpsCant} .. $${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop End If grpsCant = 0 @@ -2693,13 +2740,12 @@ Sub b_impAB_Click Next totMontoBebidas = totMontoBebidas + grpsMonto totCantBebidas = totCantBebidas + grpsCant - If imprimirAqui Then Printer1.WriteString($"${laCatAnt}${primerEspacio}${grpsCant}..$${grpsMonto} ${CRLF}"$) - Log($"${laCatAnt}: .......... "$ & grpsCant & " ..... " & NumberFormat2(grpsMonto, 1, 0, 0, True)) - cs.Color(Colors.DarkGray).Append($"${laCatAnt}${primerEspacio}${grpsCant}..$${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop + If imprimirAqui Then Printer1.WriteString($"${laCatAnt}${primerEspacio}${grpsCant} .. $${grpsMonto} ${CRLF}"$) + Log($"${laCatAnt}: .......... "$ & grpsCant & " ..... $" & NumberFormat2(grpsMonto, 1, 0, 0, True)) + cs.Color(Colors.DarkGray).Append($"${laCatAnt}${primerEspacio}${grpsCant} .. $${NumberFormat2(grpsMonto, 1, 0, 0, True)} ${CRLF}"$).pop ' Log(grpsCant & "|" & grpsMonto) - 'COMENSALES - If imprimirAqui Then Sleep(3000) +' If imprimirAqui Then Sleep(3000) Private coms As Cursor = Starter.skmt.ExecQuery($"select sum(PT_COMENSALES) as totComensales from PEDIDO_TICKET where ifnull(PT_ALMACEN,0) <> 'MULTI-TICKET'"$) Private totalComensales As Int = 0 If coms.RowCount > 0 Then @@ -2712,8 +2758,8 @@ Sub b_impAB_Click 'TOTAL ALIMENTOS Y BEBIDAS Log("*** TOTAL CONSUMO ***") - Log($"TOTAL ALIMENTOS: ${NumberFormat2(totMontoAlimentos, 1, 0, 0, True)}"$) - Log($"TOTAL BEBIDAS: ${NumberFormat2(totMontoBebidas,1,0,0,True)}"$) + Log($"TOTAL ALIMENTOS: $${NumberFormat2(totMontoAlimentos, 1, 0, 0, True)}"$) + Log($"TOTAL BEBIDAS: $${NumberFormat2(totMontoBebidas,1,0,0,True)}"$) If imprimirAqui Then Printer1.WriteString($"${CRLF}"$) Private primerEspacioLargo As Int = 30 - laCat.Length - (cuantos.Length + 1) - 6 Private primerEspacio As String = "" @@ -2723,18 +2769,18 @@ Sub b_impAB_Click Printer1.WriteString(Printer1.BOLD) If imprimirAqui Then Printer1.WriteString($"*** TOTAL CONSUMO *** ${CRLF}"$) Printer1.WriteString(Printer1.NOBOLD) - If imprimirAqui Then Printer1.WriteString($"TOTAL ALIMENTOS ....... ${totCantAlimentos} ${Subs.alineaDerecha(NumberFormat2(totMontoAlimentos,1,0,0,True), 35 - $"TOTAL ALIMENTOS ....... ${totCantAlimentos}"$.Length, ".")} ${CRLF}"$) - If imprimirAqui Then Printer1.WriteString($"TOTAL BEBIDAS ......... ${totCantBebidas} ${Subs.alineaDerecha(NumberFormat2(totMontoBebidas,1,0,0,True), 35 - $"TOTAL BEBIDAS ......... ${totCantBebidas}"$.Length, ".")} ${CRLF}"$) - If imprimirAqui Then Printer1.WriteString($"TOTAL ${Subs.alineaDerecha(NumberFormat2((totMontoAlimentos+totMontoBebidas),1,0,0,True), 35 - "TOTAL ".Length, ".")} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"TOTAL ALIMENTOS ....... ${totCantAlimentos} ${Subs.alineaDerecha("$"&NumberFormat2(totMontoAlimentos,1,0,0,True), 35 - $"TOTAL ALIMENTOS ....... ${totCantAlimentos}"$.Length, ".")} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"TOTAL BEBIDAS ......... ${totCantBebidas} ${Subs.alineaDerecha("$"&NumberFormat2(totMontoBebidas,1,0,0,True), 35 - $"TOTAL BEBIDAS ......... ${totCantBebidas}"$.Length, ".")} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"TOTAL ${Subs.alineaDerecha("$"&NumberFormat2((totMontoAlimentos+totMontoBebidas),1,0,0,True), 35 - "TOTAL ".Length, ".")} ${CRLF}"$) ' If imprimirAqui Then Printer1.WriteString($"${CRLF}"$) cs.Append($"${CRLF}"$) cs.Color(Colors.red).Append($"*** TOTAL DE CONSUMOS ***${CRLF}"$).pop - cs.Color(Colors.DarkGray).Append($"TOTAL ALIMENTOS ${Subs.alineaDerecha("$"&NumberFormat2(totMontoAlimentos, 1, 0, 0, True), 45 - "TOTAL ALIMENTOS".Length, ".")} ${CRLF}"$).pop - cs.Color(Colors.DarkGray).Append($"TOTAL BEBIDAS ${Subs.alineaDerecha("$"&NumberFormat2(totMontoBebidas, 1, 0, 0, True), 45 - "TOTAL BEBIDAS".Length, ".")} ${CRLF}"$).pop - cs.Color(Colors.DarkGray).Append($"TOTAL: ${Subs.alineaDerecha("$"&NumberFormat2(totMontoAlimentos+totMontoBebidas,1,0,0,True), 45 - "TOTAL BEBIDAS".Length, ".")} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"TOTAL ALIMENTOS $${Subs.alineaDerecha("$"&NumberFormat2(totMontoAlimentos, 1, 0, 0, True), 45 - "TOTAL ALIMENTOS".Length, ".")} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"TOTAL BEBIDAS $${Subs.alineaDerecha("$"&NumberFormat2(totMontoBebidas, 1, 0, 0, True), 45 - "TOTAL BEBIDAS".Length, ".")} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"TOTAL: $${Subs.alineaDerecha("$"&NumberFormat2(totMontoAlimentos+totMontoBebidas,1,0,0,True), 45 - "TOTAL BEBIDAS".Length, ".")} ${CRLF}"$).pop cs.Append($"${CRLF}"$) - Log($"TOTAL ALIMENTOS ...........${NumberFormat2(totMontoAlimentos, 1, 0, 0, True)} ${CRLF}"$) - Log($"TOTAL BEBIDAS ...........${NumberFormat2(totMontoBebidas, 1, 0, 0, True)} ${CRLF}"$) + Log($"TOTAL ALIMENTOS ........... $${NumberFormat2(totMontoAlimentos, 1, 0, 0, True)} ${CRLF}"$) + Log($"TOTAL BEBIDAS ........... $${NumberFormat2(totMontoBebidas, 1, 0, 0, True)} ${CRLF}"$) 'PAGOS ' If imprimirAqui Then Sleep(1000) Private pgs As Cursor = Starter.skmt.ExecQuery($"Select PT_PAGO2, sum(PT_NOART) As arts, sum(PT_MONTO) As monto from PEDIDO_TICKET where pt_pago <> 'MULTI-TICKET' and pt_pago <> 'VENTA' group by PT_PAGO2 @@ -2745,15 +2791,16 @@ Sub b_impAB_Click END"$) Private totalComensales As Int = 0 If imprimirAqui Then Printer1.WriteString($"${CRLF}"$) - Printer1.WriteString(Printer1.BOLD) - If imprimirAqui Then Printer1.WriteString($"*** PAGOS *** ${CRLF}"$) - Printer1.WriteString(Printer1.NOBOLD) - cs.Color(Colors.red).Append($"** PAGOS **${CRLF}"$).pop - Log("*** PAGOS ***") + If imprimirAqui Then Printer1.WriteString(Printer1.BOLD) + If imprimirAqui Then Printer1.WriteString($"*** PAGOS CON PROPINAS *** ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString(Printer1.NOBOLD) + cs.Color(Colors.red).Append($"** PAGOS CON PROPINAS **${CRLF}"$).pop + Log("*** PAGOS CON PROPINAS ***") Private totalPagos As String = 0 For i = 0 To pgs.RowCount - 1 pgs.Position = i Private elPago As String = pgs.GetString("PT_PAGO2") +' Log($"|${elPago}|"$) If elPago.Length > 20 Then elPago = elPago.SubString2(0, 20) ' Log($"${pgs.Position} - ${elPago.Length} - ${elPago}"$) Private monto As String = pgs.GetString("monto") @@ -2818,9 +2865,9 @@ Sub b_impAB_Click WHEN 'Efectivo' THEN 2 END"$) If imprimirAqui Then Printer1.WriteString(CRLF) - Printer1.WriteString(Printer1.BOLD) + If imprimirAqui Then Printer1.WriteString(Printer1.BOLD) If imprimirAqui Then Printer1.WriteString($"*** PROPINAS *** ${CRLF}"$) - Printer1.WriteString(Printer1.NOBOLD) + If imprimirAqui Then Printer1.WriteString(Printer1.NOBOLD) cs.Append(CRLF) cs.Color(Colors.red).Append($"** PROPINAS **${CRLF}"$).pop Log("*** PROPINAS ***") @@ -2828,10 +2875,10 @@ Sub b_impAB_Click Do While prop.NextRow If prop.GetString("PT_PAGO_PROPINA") <> Null Then Private laPropina As String = prop.GetString("PROPINA") - If imprimirAqui Then Printer1.WriteString($"${prop.GetString("PT_PAGO_PROPINA")}${Subs.alineaDerecha("$"&NumberFormat2(laPropina, 1, 2, 2, True), (30 - prop.GetString("PT_PAGO_PROPINA").Length), ".")} ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString($"${prop.GetString("PT_PAGO_PROPINA")}${Subs.alineaDerecha("$"&NumberFormat2(laPropina, 1, 0, 0, True), (30 - prop.GetString("PT_PAGO_PROPINA").Length), ".")} ${CRLF}"$) ' Log(prop.GetString("PT_PAGO_PROPINA")) - cs.Color(Colors.DarkGray).Append($"${prop.GetString("PT_PAGO_PROPINA")}${Subs.alineaDerecha("$"&NumberFormat2(laPropina, 1, 2, 2, True), (30 - prop.GetString("PT_PAGO_PROPINA").Length), ".")} ${CRLF}"$).pop - Log($" ${prop.GetString("PT_PAGO_PROPINA")}${Subs.alineaDerecha("$"&NumberFormat2(laPropina, 1, 2, 2, True), (30 - prop.GetString("PT_PAGO_PROPINA").Length), ".")} "$) + cs.Color(Colors.DarkGray).Append($"${prop.GetString("PT_PAGO_PROPINA")}${Subs.alineaDerecha("$"&NumberFormat2(laPropina, 1, 0, 0, True), (30 - prop.GetString("PT_PAGO_PROPINA").Length), ".")} ${CRLF}"$).pop + Log($" ${prop.GetString("PT_PAGO_PROPINA")}${Subs.alineaDerecha("$"&NumberFormat2(laPropina, 1, 0, 0, True), (30 - prop.GetString("PT_PAGO_PROPINA").Length), ".")} "$) totPropinas = totPropinas + laPropina End If Loop @@ -2841,27 +2888,27 @@ Sub b_impAB_Click Printer1.WriteString($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(totPropinas, 1, 2, 2, True), (30 - "Total: ".Length), ".")} ${CRLF}"$) Printer1.WriteString(Printer1.NOBOLD) End If - cs.Color(Colors.DarkGray).Append($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(totPropinas, 1, 2, 2, True), (30 - "Total: ".Length), ".")} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(totPropinas, 1, 0, 0, True), (30 - "Total: ".Length), ".")} ${CRLF}"$).pop Log($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(totPropinas, 1, 0, 0, True), (30 - totPropinas.Length), ".")} "$) 'TOTAL SIN PROPINAS If imprimirAqui Then Printer1.WriteString(CRLF) - Printer1.WriteString(Printer1.BOLD) - If imprimirAqui Then Printer1.WriteString($"*** PAGOS SIN PROPINAS *** ${CRLF}"$) - Printer1.WriteString(Printer1.NOBOLD) + If imprimirAqui Then Printer1.WriteString(Printer1.BOLD) + If imprimirAqui Then Printer1.WriteString($"*** TOTAL SIN PROPINAS *** ${CRLF}"$) + If imprimirAqui Then Printer1.WriteString(Printer1.NOBOLD) cs.Append(CRLF) cs.Color(Colors.red).Append($"** TOTAL SIN PROPINAS **${CRLF}"$).pop Log("*** TOTAL SIN PROPINAS ***") If imprimirAqui Then - Printer1.WriteString($"Total Tarjetas: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel, 1, 2, 2, True), (30 - "Total Tarjetas: ".Length), ".")} ${CRLF}"$) - Printer1.WriteString($"Total Efectivo: ${Subs.alineaDerecha("$"&NumberFormat2(montoEfectivo, 1, 2, 2, True), (30 - "Total Efectivo: ".Length), ".")} ${CRLF}"$) - Printer1.WriteString($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel+montoEfectivo, 1, 2, 2, True), (30 - "Total: ".Length), ".")} ${CRLF}"$) + Printer1.WriteString($"Tarjetas: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel, 1, 0, 0, True), (30 - "Tarjetas: ".Length), ".")} ${CRLF}"$) + Printer1.WriteString($"Efectivo: ${Subs.alineaDerecha("$"&NumberFormat2(montoEfectivo, 1, 0, 0, True), (30 - "Efectivo: ".Length), ".")} ${CRLF}"$) + Printer1.WriteString($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel+montoEfectivo, 1, 0, 0, True), (30 - "Total: ".Length), ".")} ${CRLF}"$) End If - cs.Color(Colors.DarkGray).Append($"Total Tarjetas: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel, 1, 2, 2, True), (30 - "Total Tarjetas: ".Length), ".")} ${CRLF}"$).pop - cs.Color(Colors.DarkGray).Append($"Total Efectivo: ${Subs.alineaDerecha("$"&NumberFormat2(montoEfectivo, 1, 2, 2, True), (30 - "Total Efectivo: ".Length), ".")} ${CRLF}"$).pop - cs.Color(Colors.DarkGray).Append($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel+montoEfectivo, 1, 2, 2, True), (30 - "Total: ".Length), ".")} ${CRLF}"$).pop - Log($"Total Tarjetas: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel, 1, 0, 0, True), (30 - "Total Tarjetas: ".Length), ".")} "$) - Log($"Total Efectivo: ${Subs.alineaDerecha("$"&NumberFormat2(montoEfectivo, 1, 0, 0, True), (30 - "Total Efectivo: ".Length), ".")} "$) + cs.Color(Colors.DarkGray).Append($"Total Tarjetas: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel, 1, 0, 0, True), (30 - "Total Tarjetas: ".Length), ".")} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"Total Efectivo: ${Subs.alineaDerecha("$"&NumberFormat2(montoEfectivo, 1, 0, 0, True), (30 - "Total Efectivo: ".Length), ".")} ${CRLF}"$).pop + cs.Color(Colors.DarkGray).Append($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel+montoEfectivo, 1, 0, 0, True), (30 - "Total: ".Length), ".")} ${CRLF}"$).pop + Log($"Tarjetas: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel, 1, 0, 0, True), (30 - "Tarjetas: ".Length), ".")} "$) + Log($"Efectivo: ${Subs.alineaDerecha("$"&NumberFormat2(montoEfectivo, 1, 0, 0, True), (30 - "Efectivo: ".Length), ".")} "$) Log($"Total: ${Subs.alineaDerecha("$"&NumberFormat2(montoAmex+montoMifel+montoEfectivo, 1, 0, 0, True), (30 - "Total: ".Length), ".")} "$) If imprimirAqui Then Printer1.WriteString(CRLF) @@ -2880,15 +2927,15 @@ Sub b_impAB_Click ' Else ' ToastMessageShow("¡Es necesario que NO haya mesas abiertas para realizar el cierre!", True) ' End If - If imprimirAqui Then Sleep(1000) - Printer1.DisConnect +' If imprimirAqui Then Sleep(1000) + If imprimirAqui Then Printer1.DisConnect Catch ToastMessageShow("Error en la impresion 2.", True) Printer1.Disconnect ' B4XPages.ShowPage("Principal") Activity_Resume End Try - If imprimirAqui Then Sleep(1000) +' If imprimirAqui Then Sleep(1000) b_imp.Enabled = True ProgressDialogHide End Sub @@ -3370,7 +3417,7 @@ Sub agregaFormaDePago(left0 As Int, top0 As Int, tag0 As Int, brinco As Int) If listaFormaDePago.Size > 1 Then l_faltaMonto.Visible = True Try et_montoPago2_TextChanged("","1") - Log(l_faltaMonto.Text) +' Log("PONEMOS LO QUE FALTA " & l_faltaMonto.Text) Private f() As String = Regex.Split(" ", l_faltaMonto.Text) If f.Length > 0 And f(0) = "FALTAN" Then et_montoPago2.Text = f(1) @@ -3408,7 +3455,7 @@ Private Sub cb_pago2_SelectedIndexChanged (Index As Int) End Sub Private Sub et_montoPago2_TextChanged (Old As String, New As String) - Log("TEXT CHANGED") +' Log("TEXT CHANGED") ' Log(Starter.totalActual) subtotal = 0 Private enBlanco As Boolean = False @@ -3455,6 +3502,11 @@ End Sub Private Sub et_montoPago2_FocusChanged (HasFocus As Boolean) ' Log("FOCUS CHANGED") ' Log(Starter.totalActual) + If HasFocus Then +' Log("PONEMOS EN BLANCO") + et_montoPago2.Text = "" + Sleep(200) + End If Private subtotal As String = 0 Private enBlanco As Boolean = False For i = 0 To listaMontoDePago.Size - 1 @@ -4050,7 +4102,7 @@ Sub LlenaOrden ' Log("LlenaOrden - " & Subs.hayPedido) clv_orden.Clear If Subs.hayPedido Then 'Si hay pedido obtenemos las cantidades de los productos para agregarlos al CLV. - Private c As Cursor = Starter.skmt.ExecQuery($"Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_GP_IMG, PE_PROID, PE_CANT, PE_PRONOMBRE, PE_COSTOU from cat_gunaprod join pedido on cat_gp_id = Pe_proid where PE_TICKET = '${Starter.ticketActual}' and PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and CAT_GP_PRECIO > 0 And CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_ORDENAMIENTO, CAT_GP_NOMBRE"$) + Private c As Cursor = Starter.skmt.ExecQuery($"Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_GP_IMG, PE_PROID, PE_CANT, PE_PRONOMBRE, PE_COSTOU from cat_gunaprod join pedido on cat_gp_id = Pe_proid where PE_TICKET = '${Starter.ticketActual}' and PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and CAT_GP_PRECIO > 0 And CAT_GP_CLASIF <> 'PROMOS'"$) ' order by CAT_GP_ORDENAMIENTO, CAT_GP_NOMBRE If c.RowCount > 0 Then For i = 0 To c.RowCount - 1 Private Pnl As B4XView = xui.CreatePanel("") @@ -4100,13 +4152,13 @@ Sub actualizaProductos(categoria As String) ' l_prods.SetColorAndBorder(Colors.White, 1dip, Colors.Black, 0) l_prods.SetTextAlignment("CENTER", "CENTER") ' Log(nombre) + l_prods.Tag = CreateMap("prod":nombre, "precio":c.GetString("CAT_GP_PRECIO"), "almacen":"9999", "id":c.GetString("CAT_GP_ID"), "cant":1, "img":Null) If nombre.Length > 20 Then nombre = nombre.SubString2(0, 20) nombre = nombre & " $" & c.getstring("CAT_GP_PRECIO") l_prods.Text = nombre ' {prod=ALCACHOFAS CRUDAS 250g , precio=190, almacen=9997, id=LA92, cant=7, img=Null} - l_prods.Tag = CreateMap("prod":nombre, "precio":c.GetString("CAT_GP_PRECIO"), "almacen":"9999", "id":c.GetString("CAT_GP_ID"), "cant":1, "img":Null) ' l_prods.TextColor = Colors.White Private t As Int = w @@ -4484,3 +4536,24 @@ Sub p_resumenDiaTotales_Click p_resumenDiaTotales.BringToFront Log("p_resumenDiaTotales TO FRONT") End Sub + +Sub sftp1_PromptYesNo (Message As String) + sftp1.SetPromptResult(True) +End Sub + +Sub sftp1_ShowMessage (Message As String) + Msgbox(Message, "") +End Sub + +Sub sftp1_UploadProgress (ServerPath As String, TotalUploaded As Long, Total As Long) + Dim s As String + s = "Uploaded " & Round(TotalUploaded / 1000) & "KB" + If Total > 0 Then s = s & " out of " & Round(Total / 1000) & "KB" + Log(s) +End Sub + +Sub sftp1_UploadCompleted (ServerPath As String, Success As Boolean) + Log(ServerPath & ", Success=" & Success) + If Success = False Then Log(LastException.Message) +End Sub + diff --git a/Subs.bas b/Subs.bas index 5535d0f..20b3b2a 100644 --- a/Subs.bas +++ b/Subs.bas @@ -1179,17 +1179,19 @@ Sub traeTotalTicketActual_P(tipoPago As String) As String For j = 0 To p.RowCount - 1 p.Position = j ' Log(p.GetString("CAT_GP_TIPO")) - If p.GetString("CAT_GP_TIPO") = "ALIMENTOS" Then + If p.GetString("CAT_GP_TIPO") = "ALIMENTOS" Or p.GetString("CAT_GP_TIPO") = "MEDIA" Then +' Log(1) desc = p.GetString("DESC") / 100 ' desc = Ceil(desc) Else +' Log(2) desc = 0 End If ' Log(desc) Private elSubTIndividual As String = p.GetString("PE_COSTOU") - (p.GetString("PE_COSTOU") * desc) Private st2 As String = Ceil(elSubTIndividual) * p.GetString("PE_CANT") ' Log(">>>>>>> " & p.GetString("CAT_GP_NOMBRE") & " - " & (p.GetString("PE_COSTO_TOT") * desc)) -' Log(" >>>>>> " & st & " + " & st2) + Log(" >>>>>> " & st & " + " & st2) st = st + st2 'Sumamos el subtotal anterior mas el REDONDEO del producto con descuento. Next End If