From af59ec7cd9f91c0c086cffe19a34e472fa7452d8 Mon Sep 17 00:00:00 2001 From: cvaldes1201 Date: Tue, 20 May 2025 12:01:06 -0600 Subject: [PATCH] v5.05.07 --- B4A/C_Cliente.bas | 371 ++++++++++++++++++++++++++++++++++---- B4A/C_Clientes.bas | 14 +- B4A/C_NoVenta.bas | 1 + B4A/C_Principal.bas | 149 ++++++++++++--- B4A/Files/cliente.bal | Bin 35231 -> 35845 bytes B4A/Files/mapa_rutas.bal | Bin 6377 -> 6377 bytes B4A/Files/no_venta.bal | Bin 7570 -> 7570 bytes B4A/Files/principal.bal | Bin 31501 -> 35004 bytes B4A/Files/tabulador.bal | Bin 18960 -> 18960 bytes B4A/Starter.bas | 7 +- B4A/guna_reparto.b4a | 2 +- B4A/guna_reparto.b4a.meta | 2 +- 12 files changed, 476 insertions(+), 70 deletions(-) diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 7f3dccf..6fcf6d9 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -114,6 +114,7 @@ Sub Class_Globals Dim escreditoono As String Dim m_lat, m_lon As String Dim distance As Long + Private b_imprimesegun As Button End Sub 'You can add more parameters here. @@ -209,6 +210,15 @@ Sub B4XPage_Appear L_CANT.Text = cym.Get("cantidad") l_total.Text = Round2(cym.Get("monto"), 2) + Dim mostrarimp As Cursor = Starter.skmt.ExecQuery($"SELECT gestion from kmt_info where CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)"$) + mostrarimp.Position = 0 + If mostrarimp.GetString("gestion") = "0" Then + b_imprimesegun.Visible = False + Else if mostrarimp.GetString("gestion") = "2" Then + b_imprimesegun.Visible = True + End If + mostrarimp.Close + ' If CREDITO = "1" Then ' Msgbox("AVISO","SE TIENE QUE IMPRIMIR PAGARÉ") 'ignore ' End If @@ -471,7 +481,7 @@ Sub checacredito Msgbox2Async("EL CLIENTE TIENE CREDITO DISPONIBLE, UNA VEZ SELECCIONADA UNA OPCION NO SE PODRA MODIFICAR!!!!!","Forma de pago","","Credito","Efectivo",LoadBitmap(File.DirAssets,"alert2.png"),False) Wait For Msgbox_Result (Result As Int) If Result= DialogResponse.POSITIVE Then -' Log(1) + Log(1) ' p_credito.Visible = True ' 'monto ' c=Starter.skmt.ExecQuery("select sum(HVD_COSTO_TOT) AS MONTO from HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND HVD_RECHAZO = 0 AND HVD_PARCIAL = 0") @@ -486,28 +496,34 @@ Sub checacredito B_IMP_Click banderaimp = 1 Else If Result = DialogResponse.CANCEL Then + Log(12) escreditoono = 1 - If l_total.Text.Replace(",","") <= NumberFormat2( x1.GetString("CAT_CL_LIMITECREDITO").Replace(",",""),0,2,2,False) Then - Private cliente As String = Subs.traeCliente - c = Starter.skmt.ExecQuery($"select CAT_CL_RUTA from kmt_info where cat_cl_codigo = '${cliente}'"$) - If c.RowCount > 0 Then - c.Position = 0 - Private RUTA_PREVENTA = c.GetString("CAT_CL_RUTA") - End If - c = Starter.skmt.ExecQuery($"select distinct hvd_num_ticket from hist_ventas where hvd_cliente = '${cliente}'"$) - If c.RowCount > 0 Then - c.Position = 0 - NOTA = c.GetString("HVD_NUM_TICKET") - End If - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - ProgressDialogShow("Un momento por favor!!") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insertaPagareGunaRep" - cmd.Parameters = Array As Object(Subs.traeAlmacen, RUTA_PREVENTA, Subs.traeRutaReparto, cliente, l_total.Text.Replace(",",""), NOTA, sDate & " " & sTime) - reqManager.ExecuteCommand(cmd, $"insertaPagare_${NOTA}"$) +' If l_total.Text.Replace(",","") <= NumberFormat2( x1.GetString("CAT_CL_LIMITECREDITO").Replace(",",""),0,2,2,False) Then + esPagoACreditoGuardamosPagare'' para brincar el r + Log(3) + '' descomentar +' Private cliente As String = Subs.traeCliente +' c = Starter.skmt.ExecQuery($"select CAT_CL_RUTA from kmt_info where cat_cl_codigo = '${cliente}'"$) +' If c.RowCount > 0 Then +' c.Position = 0 +' Private RUTA_PREVENTA = c.GetString("CAT_CL_RUTA") +' End If +' c = Starter.skmt.ExecQuery($"select distinct hvd_num_ticket from hist_ventas where hvd_cliente = '${cliente}'"$) +' If c.RowCount > 0 Then +' c.Position = 0 +' NOTA = c.GetString("HVD_NUM_TICKET") +' End If +' DateTime.DateFormat = "MM/dd/yyyy" +' sDate=DateTime.Date(DateTime.Now) +' sTime=DateTime.Time(DateTime.Now) +' ProgressDialogShow("Un momento por favor!!") +' Dim cmd As DBCommand +' cmd.Initialize +' cmd.Name = "insertaPagareGunaRep" +' cmd.Parameters = Array As Object(Subs.traeAlmacen, RUTA_PREVENTA, Subs.traeRutaReparto, cliente, l_total.Text.Replace(",",""), NOTA, sDate & " " & sTime) +' reqManager.ExecuteCommand(cmd, $"insertaPagare_${NOTA}"$) + '' fin descomentar + ' Else ' MsgboxAsync("El cliente debe de dar un pago de "& (l_total.Text.Replace(",","") - x1.GetString("CAT_CL_LIMITECREDITO")) &"","Atención") ' Log(3) @@ -554,9 +570,10 @@ Sub checacredito ' Starter.skmt.ExecNonQuery2("INSERT INTO PAGARES (PA_ALMACEN, PA_RUTA_REP, PA_RUTAPREV, PA_FECHA_PREV, PA_CAPTURA, PA_MONTO, PA_USUARIO, PA_CLIENTE) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (almacen,rutarep,rutaprev,fechaprev,(sDate),l_total.Text,usuario,cuenta)) ' B_IMP_Click ' banderaimp = 1 - End If +' End If End If Else + Log(4) escreditoono = 0 B_IMP_Click banderaimp = 1 @@ -676,6 +693,7 @@ Sub Guardado cmd.Name = "UPDATE_ACTUAL_GEO_GUNA_VN" ' cmd.Parameters = Array As String(l_total.Text,"1", l_total.Text,B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"CREDITO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"1", l_total.Text.Replace(",",""),B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"CREDITO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_REPARTO_GEO(HIST_RG_MONTO , HIST_RG_CREDITO , HIST_RG_MONTO_CREDITO , HIST_RG_LAT , HIST_RG_LONG , HIST_RG_RECHAZO , HIST_RG_MOTIVO , HIST_RG_USUARIO_ENTREGO , HIST_RG_RUTA_REP , HIST_RG_ESTATUS_ENTREGA , HIST_RG_COMENTARIO_ENTREGA , HIST_RG_FORMA_PAGO , HIST_RG_GEOCERCA_MTS , HIST_RG_NO_ART , HIST_RG_CLIENTE , HIST_RG_FECHA , HIST_RG_ALMACEN , HIST_RG_RUTA_PRE) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object(l_total.Text.Replace(",",""),"1", l_total.Text.Replace(",",""),B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"CREDITO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV)) reqManager.ExecuteCommand(cmd, "up_geo") ' Dim cmd As DBCommand @@ -700,7 +718,8 @@ Sub Guardado Dim cmd As DBCommand cmd.Initialize cmd.Name = "UPDATE_ACTUAL_GEO_GUNA_VN" - cmd.Parameters = Array As String(l_total.Text,"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) + cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_REPARTO_GEO(HIST_RG_MONTO , HIST_RG_CREDITO , HIST_RG_MONTO_CREDITO , HIST_RG_LAT , HIST_RG_LONG , HIST_RG_RECHAZO , HIST_RG_MOTIVO , HIST_RG_USUARIO_ENTREGO , HIST_RG_RUTA_REP , HIST_RG_ESTATUS_ENTREGA , HIST_RG_COMENTARIO_ENTREGA , HIST_RG_FORMA_PAGO , HIST_RG_GEOCERCA_MTS , HIST_RG_NO_ART , HIST_RG_CLIENTE , HIST_RG_FECHA , HIST_RG_ALMACEN , HIST_RG_RUTA_PRE) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV)) reqManager.ExecuteCommand(cmd, "up_geo") End If @@ -1001,16 +1020,22 @@ Sub B_IMP_Click Printer1.WriteString("-------PROMOS ENTREGA--------" & CRLF) Printer1.WriteString("Cant. Precio Importe" & CRLF) Printer1.WriteString("------------------------------" & CRLF) + Dim restacobranza As Int = 0 For i=0 To S.RowCount -1 S.Position=i + If s.GetString("HVD_PRONOMBRE") <> "Cobranza Pendiente" Then + + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then Printer1.Justify = 0 If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then - Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) +' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) + Else - Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) - End If + + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) TAMANO = punit.Length + TAMANO Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) @@ -1030,9 +1055,13 @@ Sub B_IMP_Click ESPACIO = 29 BLANCO = " " Printer1.Justify = 0 + End If Else End If End If + Else + restacobranza = 1 + End If Next End If @@ -1072,7 +1101,7 @@ Sub B_IMP_Click ' End If Printer1.WriteString(" " & CRLF) Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("Total Articulos: " & L_CANT.Text & CRLF) + Printer1.WriteString("Total Articulos: " & (L_CANT.Text.Replace(",","") -restacobranza) & CRLF) Printer1.WriteString("Total: $" & l_total.Text) Printer1.WriteString(" " & CRLF) Printer1.WriteString("------------------------------" & CRLF) @@ -1247,6 +1276,10 @@ Sub JobDone(Job As HttpJob) Log(NOTA) p_transPagare2.Visible = True CrearQR(NOTA) + + + + End If If resultado.Tag.As(String).IndexOf("pagareConfirmado_") > -1 Then ProgressDialogHide @@ -1627,7 +1660,7 @@ Sub imprime_abonopagare Printer1.WriteString(" " & CRLF) DateTime.DateFormat = "ddMMyyyy" sDate=DateTime.Date(DateTime.Now) - Printer1.WriteBarCode("F",notaabono&sDate) + Printer1.WriteBarCode("I",notaabono&sDate) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) @@ -1652,9 +1685,9 @@ Sub imprime_abonopagare Wait For Msgbox_Result (resultado As Int) If resultado = DialogResponse.POSITIVE Then imprime_abonopagare - p_abono.Visible = False - Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}')"$) - ToastMessageShow("Abono guardado", False) +' p_abono.Visible = False +' Starter.skmt.ExecNonQuery($"INSERT INTO ABONOS(a_usuario, a_ruta, a_cliente, a_abono, a_fecha) VALUES ('${Subs.traeUsuarioDeBD}', '${Subs.traeRuta(Subs.traeCliente)}', '${Subs.traeCliente}' ,'${et_abono.text}', '${Subs.fechaKMT(DateTime.now)}')"$) +' ToastMessageShow("Abono guardado", False) Else h = Starter.skmt.ExecQuery("SELECT CUENTA from CUENTAA") @@ -1860,7 +1893,7 @@ Sub imprime_pagare Printer1.WriteString("Colonia: " & la_col.Text & CRLF) Printer1.WriteString("Telefono: " & telefono & CRLF) Dim Ticket As String = 0 - Dim c6 As Cursor = Starter.skmt.ExecQuery("select distinct HVD_NUM_TICKET FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + Dim c6 As Cursor = Starter.skmt.ExecQuery("select distinct HVD_NUM_TICKET FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND HVD_PRONOMBRE <> 'Cobranza Pendiente'") If c6.RowCount > 0 Then For k = 0 To c6.RowCount -1 c6.Position = k @@ -1955,9 +1988,12 @@ Sub imprime_pagare If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then Printer1.Justify = 0 If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then - Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) +' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) Else - Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") ) &" "&s.GetString("HVD_PRONOMBRE") & CRLF) + If s.GetString("HVD_PRONOMBRE") <> "Cobranza Pendiente" Then +' Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Printer1.WriteString((s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") ) &" "&s.GetString("HVD_PRONOMBRE") & CRLF) + End If End If ' Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) ' TAMANO = punit.Length + TAMANO @@ -2009,7 +2045,8 @@ Sub imprime_pagare Printer1.WriteString(" " & CRLF) DateTime.DateFormat = "ddMMyyyy" sDate=DateTime.Date(DateTime.Now) - Printer1.WriteBarCode("F",Ticket&sDate) +' Printer1.WriteString("JHGHGH " & CRLF) + Printer1.WriteBarCode("I",Ticket&sDate) Printer1.WriteString(" " & CRLF) Printer1.WriteString(" " & CRLF) @@ -2065,7 +2102,9 @@ Private Sub b_cancel_pagare_Click Dim cmd As DBCommand cmd.Initialize cmd.Name = "UPDATE_ACTUAL_GEO_GUNA_VN" - cmd.Parameters = Array As String(l_total.Text,"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,rutaprev) +' cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) + cmd.Parameters = Array As String(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_REPARTO_GEO(HIST_RG_MONTO , HIST_RG_CREDITO , HIST_RG_MONTO_CREDITO , HIST_RG_LAT , HIST_RG_LONG , HIST_RG_RECHAZO , HIST_RG_MOTIVO , HIST_RG_USUARIO_ENTREGO , HIST_RG_RUTA_REP , HIST_RG_ESTATUS_ENTREGA , HIST_RG_COMENTARIO_ENTREGA , HIST_RG_FORMA_PAGO , HIST_RG_GEOCERCA_MTS , HIST_RG_NO_ART , HIST_RG_CLIENTE , HIST_RG_FECHA , HIST_RG_ALMACEN , HIST_RG_RUTA_PRE) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object(l_total.Text.Replace(",",""),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,"","",usuario,ruta,"ENTREGA", entregatotaloparial,"EFECTIVO", distance, L_CANT.text,la_cuenta.Text,fechaprev,almacen,Subs.traerUTAPREV)) reqManager.ExecuteCommand(cmd, "up_geo") banderaimp = 1 End If @@ -2288,4 +2327,262 @@ End Sub Private Sub b_cerrarqr_Click i_qr.Clear p_transPagare2.Visible = False +End Sub + +Private Sub b_imprimesegun_Click + c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") + c.Position=0 + usuario = c.GetString("USUARIO") + DateTime.DateFormat = "MM/dd/yyyy" + sDate=DateTime.Date(DateTime.Now) + sTime=DateTime.Time(DateTime.Now) + c.Close + ProgressDialogShow("Imprimiendo, un momento ...") + Printer1.DisConnect + If Not(Printer1.IsConnected) Then +' Log("Conectando a impresora ...") + Printer1.Connect + Private cont As Int = 0 + Do While Not(impresoraConectada) + Sleep(1000) +' Log("++++++ " & cont) + cont = cont + 1 + If cont = 2 Then Printer1.Connect 'Tratamos de reconectar + If cont > 3 Then impresoraConectada = True + Loop + Sleep(500) + impresoraConectada = False + Else +' Log("conectando 2") + Printer1.Connect + Private cont As Int = 0 + Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) + Sleep(1000) +' Log("****** " & cont) + cont = cont + 1 + If cont = 2 Then Printer1.Connect + If cont > 3 Then impresoraConectada = True + Loop + Sleep(500) + impresoraConectada = False + End If + + TAMANO = 0 + ESPACIO = 28 + BLANCO = " " + Dim bmp As Bitmap + bmp.InitializeResize(File.DirAssets, "logo-guna-18.jpg", 192, 192, True) 'ignore + Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp) + myimage = Printer1.DitherImage2D(myimage, 128) + myimage= Printer1.PackImage(myimage) + Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening + Printer1.WriteString(Printer1.REVERSE) + Printer1.PrintImage(myimage) + Printer1.WriteString(Printer1.UNREVERSE) +' Dim Ticket As String = 0 +' Dim c6 As Cursor = Starter.skmt.ExecQuery("select distinct HVD_NUM_TICKET FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") +' If c6.RowCount > 0 Then +' c6.Position = 0 +' Ticket = c6.GetString("HVD_NUM_TICKET") +' End If +' c6.Close + Dim telefono As String = "" + Dim c7 As Cursor = Starter.skmt.ExecQuery("select IFNULL(CAT_CL_TELEFONO,' ') AS CAT_CL_TELEFONO FROM kmt_info WHERE CAT_CL_CODIGO IN (SELECT CUENTA FROM CUENTAA)") + If c7.RowCount > 0 Then + c7.Position = 0 + telefono = c7.GetString("CAT_CL_TELEFONO") + End If + c7.Close + + Printer1.WriteString("DISTRIBUIDORA ROCHA TULA PACHUCA" & CRLF) + Printer1.WriteString(sDate & CRLF) + Printer1.WriteString(sTime & CRLF) + Printer1.WriteString("Reparto:" & usuario & CRLF) + Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF) + Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF) + Printer1.WriteString("Calle: " & la_Calle.Text & CRLF) + Printer1.WriteString("Colonia: " & la_col.Text & CRLF) + Printer1.WriteString("Telefono: " & telefono & CRLF) + + Dim Ticket As String = 0 + Dim c6 As Cursor = Starter.skmt.ExecQuery("select distinct HVD_NUM_TICKET FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + If c6.RowCount > 0 Then + For k = 0 To c6.RowCount -1 + c6.Position = k + Ticket = c6.GetString("HVD_NUM_TICKET") + Printer1.WriteString("Num. Ticket " & (k +1)&": " & Ticket & CRLF) + Next + End If + c6.Close + + Printer1.WriteString(" " & CRLF) + c = Starter.skmt.ExecQuery("SELECT * FROM HIST_VENTAS WHERE HVD_CLIENTE IN (SELECT CUENTA FROM CUENTAA)") + If c.RowCount > 0 Then + Printer1.WriteString("-------ENTREGA A "& Tipoentrega &"------" & CRLF) +' Printer1.WriteString("--------------------------------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RECHAZO FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_PROID"$) + If S.RowCount>0 Then + For i=0 To S.RowCount -1 + S.Position=i + Log(s.GetString("HVD_RECHAZO")) + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetString("HVD_CODPROMO") = Subs.traeAlmacen Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Dim punit As String = NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString( ptot & CRLF ) + TAMANO = 0 + ESPACIO = 29 + BLANCO = " " + Else If s.GetString("HVD_RECHAZO") = 1 Then + Printer1.Justify = 0 + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + Private vc5 As Cursor = Starter.skmt.ExecQuery($"select iFNULL(CAT_GP_PRECIO,0) AS CAT_GP_PRECIO from CAT_GUNAPROD where CAT_GP_ID = '${s.GetString("HVD_PROID")}'"$) + vc5.Position = 0 + Dim punit As String = NumberFormat2((vc5.GetString("CAT_GP_PRECIO")),0,2,2,False) + TAMANO = punit.Length + TAMANO + vc5.Close + Private ptot As String = NumberFormat2(( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT")) * punit ),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot& CRLF ) + TAMANO = 0 + ESPACIO = 29 + BLANCO = " " + Printer1.Justify = 0 + End If + End If + Next + End If + End If + Printer1.Justify = 0 + s.Close + Printer1.WriteString(" " & CRLF) + s=Starter.skmt.ExecQuery($"select HVD_PRONOMBRE, HVD_CANT, length(HVD_CANT) as L_CANT, HVD_COSTO_TOT, length(HVD_COSTO_TOT) as L_COSTOU,HVD_PROID, HVD_CODPROMO,IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT FROM HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) AND HVD_RECHAZO = 0 AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) + + If S.RowCount>0 Then + Printer1.WriteString("-------PROMOS ENTREGA--------" & CRLF) + Printer1.WriteString("Cant. Precio Importe" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + Dim restacobranza As Int = 0 + For i=0 To S.RowCount -1 + S.Position=i + If s.GetString("HVD_PRONOMBRE") <> "Cobranza Pendiente" Then + + + If s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT") > 0 Then + If s.GetString("HVD_CODPROMO") <> Subs.traeAlmacen Then + Printer1.Justify = 0 + If s.GetString("HVD_CODPROMO") = s.GetString("HVD_PROID") Then +' Printer1.WriteString("* "&s.GetString("HVD_PRONOMBRE") & CRLF) + + Else + + Printer1.WriteString(s.GetString("HVD_PRONOMBRE") & CRLF) + + Dim punit As String =NumberFormat2((s.GETSTRING("HVD_COSTO_TOT")/s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = punit.Length + TAMANO + Private ptot As String = NumberFormat2((punit*s.GetString("HVD_CANT")),0,2,2,False) + TAMANO = ptot.Length + TAMANO + ESPACIO = (ESPACIO - TAMANO)/2 + Log(ESPACIO) + For E=0 To ESPACIO -1 + BLANCO = " " & BLANCO + Next + Printer1.Justify = 0 + Printer1.WriteString( (s.GetString("HVD_CANT") - s.GetString("HVD_RECHAZOCANT"))& BLANCO) + Printer1.Justify = 1 + Printer1.WriteString( punit & BLANCO) + Printer1.Justify = 2 + Printer1.WriteString(ptot & CRLF ) + TAMANO = 0 + ESPACIO = 29 + BLANCO = " " + Printer1.Justify = 0 + End If + Else + End If + End If + Else + restacobranza = 1 + End If + Next + End If + +' Printer1.WriteString(" " & CRLF) +' s=Starter.skmt.ExecQuery($"select PE_PRONOMBRE, PE_CANT, length(PE_CANT) as L_CANT, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTOU,PE_PROID FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order BY PE_PROID"$) + ' +' If S.RowCount>0 Then +' Printer1.WriteString("-----------VENTA------------" & CRLF) +' Printer1.WriteString("Cant. Precio Importe" & CRLF) +' Printer1.WriteString("------------------------------" & CRLF) +' +' For i=0 To S.RowCount -1 +' S.Position=i + ' +' Printer1.Justify = 0 +' Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) +' Dim punit As String =NumberFormat2( (s.GETSTRING("PE_COSTO_TOT")/s.GetString("PE_CANT")),0,2,2,False) +' TAMANO = punit.Length + TAMANO +' Private ptot As String = NumberFormat2((punit*s.GetString("PE_CANT")),0,2,2,False) +' TAMANO = ptot.Length + TAMANO +' ESPACIO = (ESPACIO - TAMANO)/2 +' Log(ESPACIO) +' For E=0 To ESPACIO -1 +' BLANCO = " " & BLANCO +' Next +' Printer1.Justify = 0 +' Printer1.WriteString( s.GetString("PE_CANT") & BLANCO) +' Printer1.Justify = 1 +' Printer1.WriteString( punit & BLANCO) +' Printer1.Justify = 2 +' Printer1.WriteString(ptot & CRLF ) +' TAMANO = 0 +' ESPACIO = 29 +' BLANCO = " " +' Printer1.Justify = 0 +' Next +' End If + Printer1.WriteString(" " & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + Printer1.WriteString("Total Articulos: " & (L_CANT.Text.Replace(",","") -restacobranza) & CRLF) + Printer1.WriteString("Total: $" & l_total.Text) + Printer1.WriteString(" " & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF) + Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF) + Printer1.WriteString("--------INFORMATIVO-----------" & CRLF) + Printer1.WriteString("------------------------------" & CRLF) + Printer1.WriteString(" " & CRLF) + Printer1.WriteString(" " & CRLF) + Printer1.WriteString(" " & CRLF) + Sleep(1000) + Printer1.DisConnect + ProgressDialogHide End Sub \ No newline at end of file diff --git a/B4A/C_Clientes.bas b/B4A/C_Clientes.bas index e560fcd..656bac7 100644 --- a/B4A/C_Clientes.bas +++ b/B4A/C_Clientes.bas @@ -82,7 +82,7 @@ Sub B4XPage_Appear Else ListView1.Top = lv1Top + 100 End If - c=Starter.skmt.ExecQuery("select codigo, indice, CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_NOEXT from waypoints inner join kmt_info on waypoints.codigo = kmt_info.CAT_CL_CODIGO where gestion = 0 AND CAT_CL_RUTA <> 1000 order by indice") + c=Starter.skmt.ExecQuery("select distinct codigo, indice, CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_NOEXT from waypoints inner join kmt_info on waypoints.codigo = kmt_info.CAT_CL_CODIGO where gestion = 0 AND CAT_CL_RUTA <> 1000 order by indice") @@ -174,6 +174,8 @@ End Sub Sub ListView1_ItemClick (Position As Int, Value As Object) ' Log($"Entro= ${entro}"$) Log(Value) + Dim sValue As String = Value + Log(sValue.Replace("cxc","")) ListView1.Clear Sleep(50) Subs.SetDivider(ListView1, Colors.White, 2) @@ -189,11 +191,11 @@ Sub ListView1_ItemClick (Position As Int, Value As Object) ' img_getDirs.Visible = True ' b_getRutaInfo.Visible = False Private lrt As String - lrt = Value + lrt = sValue.Replace("cxc","") laRuta = lrt.SubString(6) 'Quitamos el texto "Ruta: " para obtener el numero de la ruta. - Log($"Original: ${Value} - Mod: |${lrt.SubString(6)}| - laRuta: ${laRuta}"$) + Log($"Original: ${sValue.Replace("cxc","")} - Mod: |${lrt.SubString(6)}| - laRuta: ${laRuta}"$) rutaacambiar = laRuta - c2 = Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO, CAT_CL_LAT, CAT_CL_LONG from kmt_info where CAT_CL_RUTA = ? and gestion = 0 AND CAT_CL_RUTA <> 1000 order by CAT_CL_NOMBRE ", Array As String(laRuta)) + c2 = Starter.skmt.ExecQuery2("select distinct CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO, CAT_CL_LAT, CAT_CL_LONG from kmt_info where CAT_CL_RUTA = ? and gestion = 0 AND CAT_CL_RUTA <> 1000 order by CAT_CL_NOMBRE ", Array As String(laRuta)) Private thisLoc As Location Private label1 As Label Private label2 As Label @@ -297,7 +299,7 @@ End Sub Sub BUSCA_TextChanged (Old As String, New As String) q_buscar = "%" & busca.Text & "%" - c2=Starter.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where CAT_CL_NOMBRE like ? and gestion = 0 AND CAT_CL_RUTA <> 1000 order by CAT_CL_CODIGO ", Array As String(q_buscar)) + c2=Starter.skmt.ExecQuery2("select distinct CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where CAT_CL_NOMBRE like ? and gestion = 0 AND CAT_CL_RUTA <> 1000 order by CAT_CL_CODIGO ", Array As String(q_buscar)) @@ -337,7 +339,7 @@ Sub BUSCA_TextChanged (Old As String, New As String) d = Starter.skmt.ExecQuery($"select CLIENTE FROM ABONOSP WHERE CLIENTE = '${c2.GetString("CAT_CL_CODIGO")}'"$) If d.RowCount = 0 Then ' cxc.Visible = False - ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO")&"cxc", c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) + ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) Else ' cxc.Visible = False ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO")&" CXC", c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) diff --git a/B4A/C_NoVenta.bas b/B4A/C_NoVenta.bas index 0a42d10..706b91f 100644 --- a/B4A/C_NoVenta.bas +++ b/B4A/C_NoVenta.bas @@ -200,6 +200,7 @@ Sub GUARDA_Click Log(g5.GetString("HVD_CANT")) cmd.Parameters = Array As String(g5.GetString("HVD_COSTO_TOT"),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,1,motivo,usuario,ruta,"RECHAZO", "RECHAZO TOTAL","", B4XPages.MainPage.cliente.distance, g5.GetString("HVD_CANT"),cuenta,fechaprev,B4XPages.MainPage.almacen,Subs.traerUTAPREV) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_REPARTO_GEO(HIST_RG_MONTO , HIST_RG_CREDITO , HIST_RG_MONTO_CREDITO , HIST_RG_LAT , HIST_RG_LONG , HIST_RG_RECHAZO , HIST_RG_MOTIVO , HIST_RG_USUARIO_ENTREGO , HIST_RG_RUTA_REP , HIST_RG_ESTATUS_ENTREGA , HIST_RG_COMENTARIO_ENTREGA , HIST_RG_FORMA_PAGO , HIST_RG_GEOCERCA_MTS , HIST_RG_NO_ART , HIST_RG_CLIENTE , HIST_RG_FECHA , HIST_RG_ALMACEN , HIST_RG_RUTA_PRE) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object(g5.GetString("HVD_COSTO_TOT"),"0", "",B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps,1,motivo,usuario,ruta,"RECHAZO", "RECHAZO TOTAL","", B4XPages.MainPage.cliente.distance, g5.GetString("HVD_CANT"),cuenta,fechaprev,B4XPages.MainPage.almacen,Subs.traerUTAPREV)) reqManager.ExecuteCommand(cmd, "up_geo") g5.Close B4XPages.ShowPage("Principal") diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index 6c04346..5269198 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -99,6 +99,11 @@ Sub Class_Globals Private P_PAGARES As Panel Private l_montopagares As Label + Private l_numpagares As Label + Private l_pagarescobrados As Label + Private l_pagaresnuevos As Label + Private l_montoaliquidar As Label + Private Label16 As Label End Sub 'You can add more parameters here. @@ -122,10 +127,10 @@ Private Sub B4XPage_Created (Root1 As B4XView) b=Starter.skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente") b.Position=0 Cuantos = b.GetString("CUANTOS") - d=Starter.skmt.ExecQuery("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0 AND CAT_CL_RUTA <> 1000") + d=Starter.skmt.ExecQuery("select count(distinct(CAT_CL_NOMBRE)) as TOTAL_VISITAR from kmt_info where gestion = 0 AND CAT_CL_RUTA <> 1000") D.Position=0 b.Close - e=Starter.skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info WHERE CAT_CL_RUTA <> 1000") + e=Starter.skmt.ExecQuery("select COUNT(distinct(CAT_CL_NOMBRE)) as POR_VISITAR from kmt_info WHERE CAT_CL_RUTA <> 1000") e.Position=0 If Cuantos = 0 Then l_aLiquidar.Text = 0 @@ -653,6 +658,18 @@ Sub B4XPage_Appear g8.Position = 0 + Dim pagarescobrados As Cursor = Starter.skmt.ExecQuery("SELECT IfNULL(SUM(a_abono),0) as a_abono FROM ABONOS") + pagarescobrados.Position = 0 + l_pagarescobrados.Text = NumberFormat2(pagarescobrados.GetDouble("a_abono"),0,2,2,False) + pagarescobrados.Close + + Dim pagaresnuevos As Cursor = Starter.skmt.ExecQuery("SELECT IfNULL(SUM(distinct(PA_MONTO)),0) as PA_MONTO FROM PAGARES") + pagaresnuevos.Position = 0 + l_pagaresnuevos.Text = NumberFormat2(pagaresnuevos.GetDouble("PA_MONTO"),0,2,2,False) + pagaresnuevos.Close + + l_montoaliquidar.Text = NumberFormat2((l_pagarescobrados.Text+ L_MONTOE.Text - l_pagaresnuevos.Text),0,2,2,False) + B4XPages.MainPage.clientesVisitados = L_MONTOE.Text B4XPages.MainPage.clientesVenta = l_cuantosc.Text B4XPages.MainPage.clientesRechazo = l_cuantosn.Text @@ -671,6 +688,8 @@ Sub B4XPage_Appear If l_ctast.Text = 0 And l_porvisitar.Text <> 0 Then Label9.Visible = True L_MONTOE.Visible = True + l_montoaliquidar.Visible = True + Label16.Visible = True '' hacer validacion su hay rechazo ' c=Starter.skmt.ExecQuery("select * from HIST_VENTAS WHERE hvd_rechazo <> 2 and HVD_RECHAZOCANT > 0 order by HVD_CODPROMO desc, HVD_PRONOMBRE asc") ' If c.RowCount > 0 Then @@ -680,6 +699,8 @@ Sub B4XPage_Appear ' End If b_venta_emp.Visible = False Else + Label16.Visible = False + l_montoaliquidar.Visible = False Label9.Visible = False L_MONTOE.Visible = False b_venta_emp.Visible = False @@ -760,6 +781,26 @@ Sub Subir_Click ' reqManager.ExecuteQuery(cmd , 0, "estatus") End Sub +Sub envia_reparto + c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO, NV_REPROGRAMAR FROM NOVENTA") + D=Starter.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + foto1 = c.GetBlob("NV_FOTO") + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_reparto_REPG_GUNA_VN" + cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), ALMACEN, l_ruta.Text, C.GetString("NV_REPROGRAMAR")) + reqManager.ExecuteCommand(cmd , "inst_noventa_") + Next + c.Close + End If + d.Position=0 + cuantos_noventa = D.GetString("CUANTOS_NOVENTA") + d.Close +End Sub + Sub envioinfo ' NOVENTA c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO, NV_REPROGRAMAR FROM NOVENTA") @@ -818,7 +859,31 @@ Sub envioinfo If ab.RowCount > 0 Then For i=0 To ab.RowCount -1 ab.Position = i - Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}'"$) + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NULL"$) + ab1.Position = 0 + + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_abono_REP_GUNA_VN" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), ab1.GetString("a_abono"), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA") ) + reqManager.ExecuteCommand(cmd , $"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) + ab1.Close + Log($"ins_abonosPendientes_${ab.GetString("a_cliente")}"$) + Next + End If + ab.Close + d.Close + + + 'ABONOS NUEVOS + d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") + d.Position = 0 + Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null"$) + Log(ab.RowCount) + If ab.RowCount > 0 Then + For i=0 To ab.RowCount -1 + ab.Position = i + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT SUM(a_abono) AS a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) ab1.Position = 0 Dim cmd As DBCommand @@ -897,7 +962,7 @@ Sub envioinfo End If 'FIN TABULADOR - c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_CLIENTE, HVD_PROID, HVD_FECHA, HVD_CODPROMO, HVD_NUM_TICKET, HVD_CANT, CONSECUTIVO, BCAJAS, CANTC FROM HIST_VENTAS") + c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_CLIENTE, HVD_PROID, HVD_FECHA, HVD_CODPROMO, HVD_NUM_TICKET, HVD_CANT, CONSECUTIVO, BCAJAS, CANTC FROM HIST_VENTAS where HVD_PRONOMBRE <> 'Cobranza Pendiente'") If c.RowCount > 0 Then For i=0 To c.RowCount -1 c.Position = i @@ -925,14 +990,16 @@ Sub envioinfo If c.GetString("HVD_RECHAZOCANT") <> "0" Then Log((c.GetString("HVD_RECHAZOCANT")-restacant)) cmd.Initialize - cmd.Name = "update_HVD_GUNA_VN" - cmd.Parameters = Array As String(c.GetString("HVD_RECHAZOCANT"),sDate& " "& sTime,1, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), d4.GetString("CAT_CL_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) + + cmd.Name = "update_HVD_GUNA_VN2" + cmd.Parameters = Array As String(c.GetString("HVD_RECHAZOCANT"),sDate& " "& sTime,1,Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), d4.GetString("CAT_CL_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) reqManager.ExecuteCommand(cmd, "update_hvd") + Log("ENVIE RECHAZO") Else cmd.Initialize - cmd.Name = "update_HVD_GUNA_VN" + cmd.Name = "update_HVD_GUNA_VN2" Log( c.GetString("CANTC")& c.GetString("HVD_CLIENTE")& c.GetString("HVD_PROID")&fecha3&" "&hora(0)& d4.GetString("CAT_CL_RUTA")&ALMACEN&l_ruta.Text&c.GetString("HVD_CODPROMO")&c.GetString("HVD_NUM_TICKET")& c.GetString("HVD_CANT")) - cmd.Parameters = Array As String("","","", c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), d4.GetString("CAT_CL_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) + cmd.Parameters = Array As String("","","",Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), d4.GetString("CAT_CL_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) reqManager.ExecuteCommand(cmd, "update_hvd") End If d4.Close @@ -1028,14 +1095,14 @@ Sub cargar_Click cmd.Initialize cmd.Name = "select_cliente_re_REPG_GUNA_VN" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,ALMACEN,e_ruta.text, ALMACEN,e_ruta.Text,ALMACEN) + cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,ALMACEN,e_ruta.text, ALMACEN,e_ruta.Text,ALMACEN,e_ruta.Text,ALMACEN,ALMACEN)',e_ruta.Text,ALMACEN reqManager.ExecuteQuery(cmd , 0, "kmt_datos") Log($"Pedimos kmt_datos"$) reqs.Add("kmt_datos") cmd.Initialize cmd.Name = "select_ventad2_re_REPG_GUNA_VN" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.Text,ALMACEN) + cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.Text,ALMACEN)',e_ruta.Text,ALMACEN reqManager.ExecuteQuery(cmd , 0, "hist_datos") Log($"Pedimos hist_datos"$) reqs.Add("hist_datos") @@ -1159,6 +1226,7 @@ Sub JobDone(Job As HttpJob) If Job.JobName = "DBRequest" Then Dim result As DBResult = reqManager.HandleJob(Job) If result.Tag = "select_abonosp" Then 'query tag + Starter.skmt.ExecNonQuery("DELETE FROM ABONOSP") For Each records() As Object In result.Rows Dim NOTA As String = records(result.Columns.Get("NOTA")) Dim CLIENTE As String = records(result.Columns.Get("CLIENTE")) @@ -1686,6 +1754,7 @@ Sub e_ruta_EnterPressed If RES = DialogResponse.POSITIVE Then e_ruta.Text = "" Starter.skmt.ExecNonQuery("delete from PICK_CIEGO") + Starter.skmt.ExecNonQuery("delete from HIST_REPARTO_GEO") Starter.skmt.ExecNonQuery("delete from pedido_cliente") Starter.skmt.ExecNonQuery("delete from PAGARES") Starter.skmt.ExecNonQuery("delete from CHECADO_CHECK") @@ -1754,7 +1823,7 @@ Sub B_CLIEPROD_Click Panel1.Visible = True Panel1.BringToFront Btn_Ubicar_Ru.Visible=False - c=Starter.skmt.ExecQuery("select * from kmt_info WHERE gestion <> 0 order by HORAENT") + c=Starter.skmt.ExecQuery("select distinct(CAT_CL_NOMBRE), CAT_CL_CODIGO, gestion from kmt_info WHERE gestion <> 0 order by HORAENT") Subs.SetDivider(ListView1, Colors.LightGray, 2) ListView1.Clear ListView1.TwoLinesLayout.ItemHeight = 120dip @@ -2082,14 +2151,9 @@ Private Sub B_PAGARES_Click ' Dim LABEL1 As Label ' LABEL1.TextSize = 20 ' LABEL1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) - Private label1 As Label - label1 = ListView2.TwoLinesAndBitmap.Label - label1.TextSize = 20 - label1.TextColor = Colors.White - label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) - label1.Height = 120dip + Button1.Left = (P_PAGARES.Width - Button1.Width) / 2 Button1.Top = P_PAGARES.Height - Button1.Height Subs.centraListView(ListView2,Root.Width) @@ -2097,27 +2161,64 @@ Private Sub B_PAGARES_Click Private g5 As Cursor = Starter.skmt.ExecQuery("SELECT SUM(SALDO_PENDIENTE) as SALDO_PENDIENTE FROM ABONOSP") If g5.RowCount > 0 Then g5.Position = 0 - l_montopagares.Text = g5.GetString("SALDO_PENDIENTE") + Log(NumberFormat2( g5.GetDouble("SALDO_PENDIENTE"),0,2,2,False)) + l_montopagares.Text = NumberFormat2( g5.GetDouble("SALDO_PENDIENTE"),0,2,2,False) Else l_montopagares.Text = 0 End If g5.Close + Private g7 As Cursor = Starter.skmt.ExecQuery("SELECT count(*) as SALDO_PENDIENTE FROM ABONOSP") + If g7.RowCount > 0 Then + g7.Position = 0 + l_numpagares.Text = g7.GetString("SALDO_PENDIENTE") + Else + l_numpagares.Text = 0 + End If + g7.Close + Private g6 As Cursor = Starter.skmt.ExecQuery("select NOTA,NOMBRE,SALDO_PENDIENTE from ABONOSP") - ListView2.SingleLineLayout.Label.TextColor = Colors.White ListView2.Clear + ListView2.TwoLinesLayout.ItemHeight =80dip + Dim label1 As Label + label1 = ListView2.TwoLinesLayout.Label + label1.TextSize = 16 + label1.Height = 45dip + ' label1. + label1.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) + label1.TextColor = Colors.White + Dim label2 As Label + label2 = ListView2.TwoLinesLayout.SecondLabel + label2.Top = 45dip + label2.TextSize = 16 + label2.Typeface = Typeface.CreateNew(Typeface.DEFAULT_BOLD, Typeface.STYLE_BOLD) + label2.TextColor = Colors.White If g6.RowCount > 0 Then For i = 0 To g6.RowCount - 1 g6.Position = i - Dim itemText As String - itemText = $"NOMBRE.: ${g6.GetString("NOMBRE")} ${CRLF}FOLIO: ${(g6.GetString("NOTA"))}, MONTO: $ ${(NumberFormat2(g6.GetString("SALDO_PENDIENTE"),0,2,2,False))}"$ - ListView2.AddSingleLine(itemText) +' Dim itemText As String +' itemText = $"NOMBRE.: ${g6.GetString("NOMBRE")} ${CRLF}FOLIO: ${(g6.GetString("NOTA"))}, MONTO: $ ${(NumberFormat2(g6.GetString("SALDO_PENDIENTE"),0,2,2,False))}"$ + + ListView2.AddTwoLines("NOMBRE.: "& g6.GetString("NOMBRE"),"FOLIO: "& g6.GetString("NOTA")&", MONTO: "&(NumberFormat2(g6.GetString("SALDO_PENDIENTE"),0,2,2,False))) +' ListView2.AddSingleLine(itemText) Next - Else - ListView2.AddSingleLine("No hay datos disponibles.") +' Else +'' ListView2.AddSingleLine("No hay datos disponibles.") +' ListView2.AddTwoLines("No hay datos disponibles.","") End If g6.Close + + + + + + + + + + + End Sub Private Sub Button1_Click diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal index a5155674f4d7c63a0fda20e18c46a8910a7706cd..9b01299eee556bdca98334f2a904eed36b261b4c 100644 GIT binary patch delta 2951 zcma);e^kw99LMhmrElwpu1hJ_Z6%Xr?ht*GwEVcGTt8+wC|Svfu7pTeKO|#RpAkc{ znKAS8vdu9|#(vOF%uF`IX5;LjVvZl%PWwEcbbE68W1aJPdVQbw`+1(v^L)NP?lx?* zVq+U;JB>zj)IpCZXevP=PtdYdSD27vvka*-Xwg|x}2~iS9OFT;A z7>Q#g9xbs+;xQ7Bm3W-Ey_>QdZ#B0!0Q_y;;gHn6mAl>Q*dezkX8AdybHHAV^yH#t#@wR65`&hG**_9aG&iVIdwIYN9qZBnTFvPpFFVL)@`G!~ly~&%o`f2{N#7 zR5%_83BW0#Mp(kiQdX9-a(HkWWODB^o^Kh?mxcSoeX-EPzj%a#i-s7$!j|Pca5*jx zpA6Yp(Ju&Lr~z_V%jMy@JUkEkM);DW$fLWMAUDDQE7+9JrhGQ7#A8OuWEW|G0yeE; z(<(N-jf0~l)5>86Sk0z2WD3Ld;aXV3#&@uMl+CEZS~ji2ikL9GrfOjwZ#HVAmhqIYhbJaHnL}vZH-M>Ht|iYGj_vHCIh_3>SjKh&AjC;ST(Uf>VtIRj7!EC zU@Kcn*;2}uZDdi=CD;W!j8mbE_3f;0XZ?MfUOZlf4_Mz}OJD~juo!g{RQQmUojh_U zkNn6sa>E-c>|%YlZRBnmX@!rucMqPQWP&|B>JuC@IS=-7|32yu>nI)}@d8rBn_Rq` zm3@3Xx2FYQ;ZzswIz@&3>^~ssHp+Pt$_+*$ioL82eZv zu`KQnIAVK_j$n0sKll`#r{}?EIDMWTm&_fAZD;tQOM(KQ_cwWWX~?aU`58(BX*z3fB25*097i0LRc=5QfT3t?Mz`f_RBKiLaB=!U|vD zn3=V39ET>GT#rBJGkNLZORPw)g>u%*ThUKo-?wUU&>WRg(3`_?%j~UilClhRJ^7ql zZw|)P`3fGH6WZk~(%Micr>J>>!Va9of6MT*O6ur+kqC-^RTMGLIYQ7UaXQ&Zh zTjdnOOwW#|37hvO);x=AQxc#O>r;~9d)rx_o#zLRSU0aT-kn>6H&gwvcAkQ6W<7eO zR^q>A6{;xzt8}&^_wy}g6^h7xm}7I^n6$vJ^+f9)H?)@M4=tt?3p6EqB&{4S(8dF? z%vZsb3@_IUExc7I3h^Tq%7|g=DJF?IZA=^xL zbR|~8O79*RpX7jndEGEL!waYRXwj6VIEr*UDZq@2GQ1tD2pcCX4h_I7c@8*faShyR zvC&)PX|8nRq1@(;!V;CgKfUo>pq`g<&(vW}QWrkZn9QC~C8o_vGhkgW7c?(b`E%48 zPnbPWpX7#t$vX7S(&6<9?a|WPi)--bbIWyz(8CFO7>sx$Q-vkgK9)qFd*)n$KR-i8 ze2}F=CUx5b+@Zu9AH6%z%|dnzON>Ih?9p(SZq7*Dlc8v%BkWl;q`!=~gBB8lZwR}X6@lk=%8niM3 P;0c?av|@Tnrd|I5@rdW& delta 3025 zcma);3sjU<5XW~=&?N<2QIJ)^c$kQ&i?3W30a08;!AEA9Z;2GOl~s_HmpoJ=4H;C@ zR7@o_4RkHBe5SqCgJqeeNDm(!lb|%I(`lPKz{lNl>>NF3uD^Tdf9IRI^L^aSFLl_7 z4xJrUD%G}*DwQ++KXqg0!-p5`%4_q##ySqZ4=c~68DohP~!d)2T43Y z;$VpfN<2v7!OU6B73(BNh{QuA9xCxLiHA!(LgJ?-9x1V2;!t|Na_k0)!z3Ohak#`0 z5=RoZHhwg56xkTEu@Xm1Jg$Yagvcm4Vk90faje7>B%Ua7oW$`GPm*}D#8Xr%>&6a) z!1ZrhbRwH?o|AoMs%=_bj$6BJA<9E%H#~ovCJbKR$w1(S3Et{K$JZ# z7*cR;m>$CoMo4A~)wBZ7>vI}=^&3)`HCu^Rco+MY^y41 ztPa+)YMr85$EpI{7Tv147p;R=SXIcXs&NJ=WYw$K%h;@%1M69_0e6j$hYeKaWX{(g z8{*a27^8#N*k8o{B0hz{u^LHZj@7|N))cd*m^BBYh31T>2i8t70wA%>#*t4H^*39XT*H&p@Kkt4U4RiJQ z=WLhanR+2QRVMZ*k4Ve^N;yJ()D2k+r&({wnBlNJQgn7QCC z#xL;0^$BX%YWh&c-@;DfvQZzk?oCJoIEI54#^dG$4dOyy+!vz3f$1Zx^@)*yy%T3c zH5M%lfDh1ZwXt|nIUMIlzQ4%edfYBpHD+sl-~|4gX+%>}Ih<5(A#fG5mqbXd9_*DTTF9?Gj~`9RdZ9NObUisT?NKTE?CWRB2DOwUmT z-JCuW3o1O6Uxf_?L^Md>~pMMF%Q1L zXH74`c|OStoMPxQHC&+6^u~l`=h1VSpJxTB#m%k0Xcy!HE=j(QgOmM4RX8izr=_NH zj4|tRak8i<>3?gv^cb}?G}#_i%O$%sYG~G4i#FvHhOFq04JmrpFYQzpxouyG?&7rs zH6Bde4wor~Agu9Kqg$%h_3|V1U$fplZA{iTA0O79{5CkgK4FYu?4L^`M*)os({i9giw&J9Ni6^VJyV zt>*7BkFG#jU64K7Ue)?BV^VG${EBtSQE1BzfP4HtFZNLriT8Pvj|M9j1mOO>67PvGV`MbgJW*Jg2`chY^f^!jBsp1B;tBwj;t-Ai delta 46 ucmaE9_|kAgsUTy(PvGV`L22JW*Jg2`chY^f^!jBsp1B;tBwvq7e=N diff --git a/B4A/Files/no_venta.bal b/B4A/Files/no_venta.bal index 83f472881461dfbe90ccd964305cd42aa43b17c1..798cf961902dcde4d614829d94b77edd6ad094b5 100644 GIT binary patch delta 25 gcmbPaJ;{25y8vUtx4wO0c+(4RR910 delta 25 gcmbPaJ;{25y8vUux4wO0dBh($ diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal index f53d9d26a5b4621a6eb339c8a34fbf7d59bd2bb1..324f4f70679e90b762677450f5a74111b38475ac 100644 GIT binary patch delta 2803 zcmb7GX;4#F6wZk#CTtR@2^N~5(Gjo=FKi;R8+Kw$P^ZJ#7)c0eLlP4Zu}%ToAD!vK z=xICC={UtMI(3v{-=F?)oZ=6=V69kdYgMXJwTlQ^OBI*)-bjYRQz^esVFTiUA*dV}0hLux=>jid!t?#%oR^Chpkw&sIB($JO zUs6$G&>HEQabSLVF7?*hy{+r))^-i;yvgisH8y%&4u{rh-sG@aXwRi>t*tI6NB68u zYcP};@Fhi=U^N`g)U~x(Jua2Ss`4H3NaA#uf?ojZgTorRTE(D->bXsBkITZSTNpIy zJ$5H9lPB=U6qea=k579l1`_uZ>XXFa6Y@x;U^jUrQBaI~7AnzXlVYdx0?g+(s1y*_ z{}|f7owKV=MbfZW<2P$nat14&v#qI_g(LXEo(?S8z$ z(`S~Uy>3d0ZUpO?R8-?1x*gDk&eeW>HMZ!fXI$^^N{wS{cECG?!{G;poj%RI#51nv z_{H^=!Nr`yC@shDTN~o)Dd+f<^_S-2el7uz*Qoi5jVl54I8>C%_nCD*h@?e6uQ3z+ zH2m0d1lKpDz!%uvkO*I5uVcY3w~T<;&05r(BxrSN;49QMXy9u`8T3;I2}Q@k$65Fr z7Czw*p9mUaEj%B$3mz5q0=nC-jfgC<3Ra#ID^T?INu1> zINvG5-ijpn0e9>3@nl9cMioimQ@VZdBjcZCeBVjIco*YiuTh45`Vzt<+X_E1<~gA< zoWt(wbU2TDj6vN&rh9?0hlRQ@OxVSkVMxXEMmY>J)t?#fVuso( z|BguVD}Lr(Jo`5Sf5-l&#AF&>Kn&>b2YPc#Xlwj77GO$yPR!^d(p^Rs+`yjp zF&Oi$x*%q32F^JCvvmw^2KMnd`B3ZHWwAFyxgrtvCO$_!^p?U5aI;TAY_9W9hf26}}xRBPcvgh+J9lS72fjfr(B0 zzlr@#Dn4#vG!~rL1f3ZFv@H+d4r`puCg#o~lt-tOPp?+E8|ZVA_9?ZHX|ppi$(o(j y^!$Gxt9#R%yiQz9g2sYPPV%Eo9RT-z4W{8o&9a#Lp_IT;dVr(NZ{UM%^Zo_Bg9GCL delta 1771 zcma)6TTE0}6rDYSI2RQdsRL8WOQ0IL<{2&2&6r{tTV1e3bXhoX% zsILCdnn3zN(xmCb6Px(1O%waFL2T_qs%WY2O8jYJnwai$fMIM+(~o^;?X}j~XPVwOCaJdhzU_6h*k7J#<9I()j?ut8s zdjhrj%y?=&TiP2C8NM-oA*XHIR9@@c(&7%`ys2($r)$%e_O`Y{cU^s3V*@nA@R`L-D{;Y+NNIRzNv3opg(W6rn0S@5 z*6CR5s48^Hq`YNo=Zh_kuh;@O$?xjyYCfO zt6xL!P7Cs)m!m&skXDK4*f64#N^D(rgWL)QIyCH!o5I89XdH^4Wsf90P|S`(P4uS3 z5FR{pM-sv>ajB7k34@Imk(KOcq|LI7@TAN@t5QZ*aC%HB<2ENztXQ7Lo2Mf>R>wr8 zhIjfQLNf}O64k3bgwqWH_%t;G{+R=`UF^$bD!3>BJC|p`ZkN;-b{EleA}lA}NJqJ_ z+6Oyw-=$%M6lIGIdD*037=qWwiBZQXqc=5+qiYr$vGL^vbV`gC^$;f93~{_#M^-YQ zzj(LuCL*`wZED3Yc{)5P8iGo@W@_xOh{KuEKGr^})X`OTV6Hawa=AwGt^-f^=4Qrr|W#K)@0*DXCL)Le||bw$HIy# z$=&bNaXM4Oy{hTHvvJtfNAIy$N7D;)y^S!(UU74MF-@NyqeZ%C-N31ufH+=lHu0dt z!3PvteYTu>I1f;EV-~M(nj^&RhQeu8&Z4d96ko1NI*XX6mmzSMiP2D06w-EW4*Qbt zpuFv-ulOPVHRR`IFnx`(ZSnr!F#Hx*cSXcV)yhG4`5`|hlhm>}7Mf*tRz&vq5S;^+ zEJ1E}5-#pG2c3J=0^Jsh_DC~*hsc3_u(rx8UrD2?tD!CvqoF8%mznc1(dGK@&dzgb z)tTn)OvC=xr8IiDkNX&#=_4m-?2#Tuy**sO{n8Tr)otfnsnPccsj<-yIB$)hi|A-h z#$=lrA4e_5$>uuxQK>&E^=G9vxo6b`{Mu^5?U!t@wrjA~JWH39Z(RClT+R7pb1H7O z*l@@*?YOKQSCr$*j6>G3(}ddTs?x71{hC+5wAoI-p<`z?O?oFb`Tr;O`{O1y+_jV@ z5BB9P>1H*8gZ#)~cuImW(b1nkblp42>&(u*@X3Eoa)fRu?~$IIpd0`2o^eIfO~m$2 x(Jge8uEs=k|Z#tlCe87E9uaFdw4&Ru1*nUXOh5_g$03Rg@Oh1;f9&4;Ae&J;yk|Z#tlCe8COhJaFdw4&Ru1*nUXOh5_g$03Rg@Oh1;f9&4;Ae&J;y