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 a515567..9b01299 100644 Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ diff --git a/B4A/Files/mapa_rutas.bal b/B4A/Files/mapa_rutas.bal index cb2ac63..57e8eeb 100644 Binary files a/B4A/Files/mapa_rutas.bal and b/B4A/Files/mapa_rutas.bal differ diff --git a/B4A/Files/no_venta.bal b/B4A/Files/no_venta.bal index 83f4728..798cf96 100644 Binary files a/B4A/Files/no_venta.bal and b/B4A/Files/no_venta.bal differ diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal index f53d9d2..324f4f7 100644 Binary files a/B4A/Files/principal.bal and b/B4A/Files/principal.bal differ diff --git a/B4A/Files/tabulador.bal b/B4A/Files/tabulador.bal index 3c4189a..ac60616 100644 Binary files a/B4A/Files/tabulador.bal and b/B4A/Files/tabulador.bal differ diff --git a/B4A/Starter.bas b/B4A/Starter.bas index 1156149..1f30c31 100644 --- a/B4A/Starter.bas +++ b/B4A/Starter.bas @@ -98,6 +98,7 @@ End Sub Private Sub Timer1_Tick ' ToastMessageShow("Timer",False) ' LogColor("Siguiente actualizacion " & DateTime.Time(DateTime.Now + Interval * 1000),Colors.Blue) + ENVIA_ULTIMA_GPS End Sub @@ -124,11 +125,15 @@ Sub ENVIA_ULTIMA_GPS cmd.Name = "UPDATE_ACTUAL_GPS_GUNA_VN" ' cmd.Parameters = Array As Object(B4XPages.MainPage.clientesvisitados, B4XPages.MainPage.clientestotal, B4XPages.MainPage.clientesventa, B4XPages.MainPage.montoRechazado, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.batt, B4XPages.MainPage.montoEntregado, B4XPages.MainPage.montoRechazado,B4XPages.MainPage.clientestotal, B4XPages.MainPage.porVisitar, B4XPages.MainPage.entregas, B4XPages.MainPage.rechazos, B4XPages.MainPage.ALMACEN, B4XPages.MainPage.rutapreventa ) cmd.Parameters = Array As String(B4XPages.MainPage.montoActual,B4XPages.MainPage.montoRechazado,B4XPages.MainPage.monto_entregadoactual,B4XPages.MainPage.piezas_entregdas, B4XPages.MainPage.clientestotal,B4XPages.MainPage.entregas, B4XPages.MainPage.rechazos, (B4XPages.MainPage.rechazos + B4XPages.MainPage.entregas), B4XPages.MainPage.porVisitar, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.batt,Application.VersionName,B4XPages.MainPage.ALMACEN, B4XPages.MainPage.rutapreventa) - Log(B4XPages.MainPage.montoActual) + Log(B4XPages.MainPage.montoActual&", "&B4XPages.MainPage.montoRechazado&", "&B4XPages.MainPage.monto_entregadoactual&", "&B4XPages.MainPage.piezas_entregdas&", "& B4XPages.MainPage.clientestotal&", "&B4XPages.MainPage.entregas&", "& B4XPages.MainPage.rechazos&", "& (B4XPages.MainPage.rechazos + B4XPages.MainPage.entregas)&", "& B4XPages.MainPage.porVisitar&", "& B4XPages.MainPage.lat_gps&", "& B4XPages.MainPage.lon_gps&", "& B4XPages.MainPage.batt&", "&Application.VersionName&", "&B4XPages.MainPage.ALMACEN&", "& B4XPages.MainPage.rutapreventa) ' If B4XPages.MainPage.logger Then Log($"montoActual: ${B4XPages.MainPage.montoActual}, cTotal: ${B4XPages.MainPage.clientestotal}, cVenta: ${B4XPages.MainPage.clientesventa}, cVisitados: ${B4XPages.MainPage.clientesvisitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, montoRechazado: ${B4XPages.MainPage.montoRechazado}, montoEntregado: ${B4XPages.MainPage.montoEntregado}, porVisitar: ${B4XPages.MainPage.porVisitar}, entregas: ${B4XPages.MainPage.entregas}, rechazos: ${B4XPages.MainPage.rechazos}, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$) reqManager.ExecuteCommand(cmd, "up_geolocalizacion") skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) + If B4XPages.MainPage.principal.IsInitialized Then + B4XPages.MainPage.principal.envia_reparto + End If + 'Reiniciamos el timer para cuando llamamos el Sub desde otra actividad Timer1.Enabled = False Timer1.Interval = Interval * 1000 diff --git a/B4A/guna_reparto.b4a b/B4A/guna_reparto.b4a index 0977a12..f880747 100644 --- a/B4A/guna_reparto.b4a +++ b/B4A/guna_reparto.b4a @@ -251,7 +251,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Guna Reparto #VersionCode: 1 - #VersionName: 5.03.09 + #VersionName: 5.05.07 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: portrait #CanInstallToExternalStorage: False diff --git a/B4A/guna_reparto.b4a.meta b/B4A/guna_reparto.b4a.meta index fc9ff20..f8b11df 100644 --- a/B4A/guna_reparto.b4a.meta +++ b/B4A/guna_reparto.b4a.meta @@ -94,6 +94,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Cliente,B4XPage_Created,128,0,Diseñador Visual,principal.bal,-100,6,C_Principal,B4XPage_Created,165,0,Starter,ENVIA_ULTIMA_GPS,120,3,C_Cliente,Class_Globals,107,0,C_Cliente,Guardado,671,6,B4XMainPage,Class_Globals,47,0,C_Principal,ListView2_ItemClick,2225,6,C_Principal,cuanto,2207,0,C_Principal,B4XPage_Appear,677,6 +NavigationStack=Diseñador Visual,principal.bal,-100,2,Diseñador Visual,cliente.bal,-100,1,C_Cliente,Class_Globals,111,0,C_Principal,JobDone,1146,0,C_Principal,envioinfo,879,6,C_Cliente,imprime_abonopagare,1735,0,C_Cliente,B_IMP_Click,847,0,C_Cliente,b_imprimesegun_Click,2571,0,C_Cliente,B4XPage_Appear,210,6,C_Cliente,HIST_Click,814,0 SelectedBuild=0 VisibleModules=2,4,5,6,7,9,30,29,16,27