From cdd72a1b046b21dbeca6a3203bbf0c1e06ff3d0b Mon Sep 17 00:00:00 2001 From: cvaldes1201 Date: Thu, 16 Apr 2026 13:40:13 -0600 Subject: [PATCH] se ajustan procesos de mayoreo --- B4A/C_Cliente.bas | 7 +- B4A/C_DetalleVenta.bas | 3 +- B4A/C_Principal.bas | 496 +++++++++++++++++++------------------- B4A/guna_reparto.b4a | 2 +- B4A/guna_reparto.b4a.meta | 2 +- 5 files changed, 256 insertions(+), 254 deletions(-) diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index e4589e3..b55502f 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -840,7 +840,7 @@ Sub gest_Click MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") - checacredito +' checacredito End If ' Else If cliecred.GetString("CAT_CL_LIMITECREDITO") >= u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",","") Then 'AQUI VAMOS A VALIDAR SI EL CREDITO ALCANZA' ' MsgboxAsync("Para poder hacer una entrega se necesita liquidar el(los) pagare(s)","Atención") @@ -850,7 +850,7 @@ Sub gest_Click Dim creditofaltante As Float = (cliecred.GetString("CAT_CL_LIMITECREDITO") - ( u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",",""))) * -1 MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") - checacredito +' checacredito End If Else If u.GetString("SALDO_PENDIENTE") = 0 Then checacredito @@ -1450,6 +1450,7 @@ Sub HIST_Click Else Dim creditofaltante As Float = (cliecred.GetString("CAT_CL_LIMITECREDITO") - ( u.GetString("SALDO_PENDIENTE") + l_total.Text.Replace(",",""))) * -1 MsgboxAsync($"Para poder hacer una entrega se necesita liberar '${creditofaltante}' de credito."$,"Atención") + B4XPages.ShowPage("DetalleVenta") End If Else If u.GetString("SALDO_PENDIENTE") = 0 Then B4XPages.MainPage.detalleVenta.prodsMap.Initialize @@ -4227,7 +4228,7 @@ Sub imprime_pagare 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_PRONOMBRE <> 'Cobranza Pendiente' AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) + 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_PRONOMBRE <> 'Cobranza Pendiente' AND HVD_CODPROMO <> HVD_PROID AND HVD_CODPROMO <> '${Subs.traeAlmacen}' order by HVD_CODPROMO, ESPROMO DESC, HVD_PROID"$) If S.RowCount>0 Then Printer1.WriteString("-------BONIFICACIONES--------" & CRLF) Printer1.WriteString("Cant. Precio Importe" & CRLF) diff --git a/B4A/C_DetalleVenta.bas b/B4A/C_DetalleVenta.bas index 6c9f62f..30820cc 100644 --- a/B4A/C_DetalleVenta.bas +++ b/B4A/C_DetalleVenta.bas @@ -579,7 +579,8 @@ Sub b_prodMenos_Click Log(esteTag.Get(3)) result = Msgbox2("Si se modifica una promoción, la promoción se rompe y solo quedarán los productos sueltos, ¿seguro que desea continuar?","Modificar Promoción", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore If result = DialogResponse.POSITIVE Then 'Quitamos esta promo - prodsMap.Remove(esteTag.Get(3)) + +' prodsMap.Remove(esteTag.Get(3)) ' c=Starter.skmt.ExecQuery($"select HVD_CODPROMO FROM HIST_VENTAS WHERE HVD_CODPROMO = '${esteTag.Get(2)}' AND HVD_cliente IN (Select CUENTA from cuentaa)"$) ' For i = 0 To c.RowCount -1 ' c.Position = i diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index e326eae..6362bf7 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -223,8 +223,8 @@ Sub B4XPage_Appear reqManager.Initialize(Me, B4XPages.MainPage.server) Starter.skmt.ExecNonQuery("DELETE FROM ABONOS where a_abono is null or a_abono = ''") Starter.skmt.ExecNonQuery("DELETE FROM NOVENTA where NV_CLIENTE is null or NV_CLIENTE = ''") -' Starter.skmt.ExecNonQuery("DELETE FROM NOVENTA where NV_CLIENTE is null or NV_CLIENTE = '0050371272'") -' Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 0 WHERE CAT_CL_CODIGO = '0050371272'") +' Starter.skmt.ExecNonQuery("DELETE FROM NOVENTA where NV_CLIENTE is null or NV_CLIENTE = '0050377607'") +' Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 0 WHERE CAT_CL_CODIGO = '0050377607'") ' Starter.skmt.ExecNonQuery("DELETE FROM CODIGO_CREDITO where CLIENTE = '0050392381'") ' Starter.skmt.ExecNonQuery("update kmt_info set gestion = 0 where CAT_CL_CODIGO = '0050392381' ") p_principal.Width = Root.Width @@ -924,59 +924,59 @@ Sub envioinfo recibidos = 0 l_envio.Text = "ENVIANDO" ' NOVENTA -' c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO,NV_FOTO2, NV_REPROGRAMAR FROM NOVENTA") -' cuantosenvio = cuantosenvio + c.RowCount -' 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 -' Dim fotoenvio() As Byte = C.GetBlob("NV_FOTO2") -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_reparto_REPG_GUNA_VN2" -' 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"),fotoenvio) -' reqManager.ExecuteCommand(cmd , "envio_inst_noventa") -' Next -' c.Close -' End If -' d.Position=0 -' cuantos_noventa = D.GetString("CUANTOS_NOVENTA") -' d.Close -' -' 'PAGARES. -' Dim pa As Cursor =Starter.skmt.ExecQuery("select PA_ALMACEN,PA_RUTA_REP,PA_RUTAPREV,PA_FECHA_PREV,PA_CAPTURA,PA_MONTO,PA_USUARIO,PA_CLIENTE,IFNULL(PA_CANCELADO,0) AS PA_CANCELADO from PAGARES") -' If pa.RowCount > 0 Then -' For pag = 0 To pa.RowCount - 1 -' pa.Position = pag -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_reparto_PAGARES_GUNA_VN" -' Dim fechaenvio() As String -' fechaenvio = Regex.Split(" ",pa.GetString("PA_FECHA_PREV")) -'' Log(fechaenvio(0)) -' Dim fechaenvio1() As String -' fechaenvio1 = Regex.Split("/",fechaenvio(0)) -' Dim fechaano As String = fechaenvio1(2).SubString(2) -' Dim fechareal As String = fechaenvio1(0)&"/"&fechaenvio1(1)&"/"&fechaano -'' Log(fechareal) -' Dim fechacap() As String -' fechacap = Regex.Split("/",pa.GetString("PA_CAPTURA")) -' Dim fechacapano As String = fechacap(2).SubString(2) -'' Dim mes As Int = DateTime.GetMonth(DateTime.Now) -' If DateTime.GetMonth(DateTime.Now) = fechacap(1) Then -' Dim fechacapreal As String = fechacap(0)&"/"&fechacap(1)&"/"&fechacapano -' Else -' Dim fechacapreal As String = fechacap(1)&"/"&fechacap(0)&"/"&fechacapano -' End If -' If pa.GetString("PA_CANCELADO") = "2" Then -' cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),NumberFormat2(pa.GetString("PA_MONTO"),0,2,2,False),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),Subs.traeRutaReparto,fechareal,pa.GetString("PA_USUARIO"),2) -' Else -' cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),pa.GetString("PA_MONTO"),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),Subs.traeRutaReparto,fechareal,pa.GetString("PA_USUARIO"),"") -' End If -' reqManager.ExecuteCommand(cmd , "ins_pagares") -' Next -' End If -' pa.Close + c = Starter.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_FOTO,NV_FOTO2, NV_REPROGRAMAR FROM NOVENTA") + cuantosenvio = cuantosenvio + c.RowCount + 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 + Dim fotoenvio() As Byte = C.GetBlob("NV_FOTO2") + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_reparto_REPG_GUNA_VN2" + 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"),fotoenvio) + reqManager.ExecuteCommand(cmd , "envio_inst_noventa") + Next + c.Close + End If + d.Position=0 + cuantos_noventa = D.GetString("CUANTOS_NOVENTA") + d.Close + + 'PAGARES. + Dim pa As Cursor =Starter.skmt.ExecQuery("select PA_ALMACEN,PA_RUTA_REP,PA_RUTAPREV,PA_FECHA_PREV,PA_CAPTURA,PA_MONTO,PA_USUARIO,PA_CLIENTE,IFNULL(PA_CANCELADO,0) AS PA_CANCELADO from PAGARES") + If pa.RowCount > 0 Then + For pag = 0 To pa.RowCount - 1 + pa.Position = pag + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_reparto_PAGARES_GUNA_VN" + Dim fechaenvio() As String + fechaenvio = Regex.Split(" ",pa.GetString("PA_FECHA_PREV")) +' Log(fechaenvio(0)) + Dim fechaenvio1() As String + fechaenvio1 = Regex.Split("/",fechaenvio(0)) + Dim fechaano As String = fechaenvio1(2).SubString(2) + Dim fechareal As String = fechaenvio1(0)&"/"&fechaenvio1(1)&"/"&fechaano +' Log(fechareal) + Dim fechacap() As String + fechacap = Regex.Split("/",pa.GetString("PA_CAPTURA")) + Dim fechacapano As String = fechacap(2).SubString(2) +' Dim mes As Int = DateTime.GetMonth(DateTime.Now) + If DateTime.GetMonth(DateTime.Now) = fechacap(1) Then + Dim fechacapreal As String = fechacap(0)&"/"&fechacap(1)&"/"&fechacapano + Else + Dim fechacapreal As String = fechacap(1)&"/"&fechacap(0)&"/"&fechacapano + End If + If pa.GetString("PA_CANCELADO") = "2" Then + cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),NumberFormat2(pa.GetString("PA_MONTO"),0,2,2,False),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),Subs.traeRutaReparto,fechareal,pa.GetString("PA_USUARIO"),2) + Else + cmd.Parameters = Array As Object(pa.GetString("PA_CLIENTE"),pa.GetString("PA_MONTO"),fechacapreal,pa.GetString("PA_ALMACEN"),pa.GetString("PA_RUTAPREV"),Subs.traeRutaReparto,fechareal,pa.GetString("PA_USUARIO"),"") + End If + reqManager.ExecuteCommand(cmd , "ins_pagares") + Next + End If + pa.Close Dim ca As Cursor = Starter.skmt.ExecQuery($"SELECT * FROM HIST_REPARTO_GEO "$) If ca.RowCount > 0 Then @@ -988,207 +988,207 @@ Sub envioinfo cmd.Initialize 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(ca.GetString("HIST_RG_MONTO"),ca.GetString("HIST_RG_CREDITO"),ca.GetString("HIST_RG_MONTO_CREDITO"),ca.GetString("HIST_RG_LAT"),ca.GetString("HIST_RG_LONG"),ca.GetString("HIST_RG_RECHAZO"),ca.GetString("HIST_RG_MOTIVO"),ca.GetString("HIST_RG_USUARIO_ENTREGO"),ca.GetString("HIST_RG_RUTA_REP"),ca.GetString("HIST_RG_ESTATUS_ENTREGA"),ca.GetString("HIST_RG_COMENTARIO_ENTREGA"),ca.GetString("HIST_RG_FORMA_PAGO"),ca.GetString("HIST_RG_GEOCERCA_MTS"),ca.GetString("HIST_RG_NO_ART"),ca.GetString("HIST_RG_CLIENTE"),ca.GetString("HIST_RG_FECHA"),ca.GetString("HIST_RG_ALMACEN"),cds.GetString("HVD_RUTA")) +' 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(ca.GetString("HIST_RG_MONTO"),ca.GetString("HIST_RG_CREDITO"),ca.GetString("HIST_RG_MONTO_CREDITO"),ca.GetString("HIST_RG_LAT"),ca.GetString("HIST_RG_LONG"),ca.GetString("HIST_RG_RECHAZO"),ca.GetString("HIST_RG_MOTIVO"),ca.GetString("HIST_RG_USUARIO_ENTREGO"),ca.GetString("HIST_RG_RUTA_REP"),ca.GetString("HIST_RG_ESTATUS_ENTREGA"),ca.GetString("HIST_RG_COMENTARIO_ENTREGA"),ca.GetString("HIST_RG_FORMA_PAGO"),ca.GetString("HIST_RG_GEOCERCA_MTS"),ca.GetString("HIST_RG_NO_ART"),ca.GetString("HIST_RG_CLIENTE"),ca.GetString("HIST_RG_FECHA"),ca.GetString("HIST_RG_ALMACEN"),cds.GetString("HVD_RUTA")) reqManager.ExecuteCommand(cmd, "up_geo") Next End If -' 'ABONOS -' d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") -' d.Position = 0 -' Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_tipoabono 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 NULL"$) -' Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT 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_VN2" -' cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA"), "", ab.GetString("TIPO_PAGO"),ab.GetString("a_ticket"),ab.GetString("a_numpago")) -' 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 -' -' -' c=Starter.skmt.ExecQuery("SELECT RUTA_PREV, RUTA_REP, FECHA_PREV, FECHA, ALMACEN, NUM_TICKET, MONTO, METODO_PAGO, USUARIO, CLIENTE, NUM_PAGO FROM CONTADOS") -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_CONTADO_GUNA_VN" -' cmd.Parameters = Array As Object(c.GetString("RUTA_PREV"), c.GetString("RUTA_REP"), c.GetString("FECHA_PREV"), c.GetString("ALMACEN"), c.GetString("NUM_TICKET"),NumberFormat2(c.GetString("MONTO").Replace(",",""),0,2,2,False) , c.GetString("METODO_PAGO"), c.GetString("USUARIO"), c.GetString("CLIENTE"), c.GetString("NUM_PAGO")) -' reqManager.ExecuteCommand(cmd , "ins_CONTADOS") -' Next -' c.Close -' End If -' -' '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_tipoabono IS NOT 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"$) -' Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) -' ab1.Position = 0 -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_abono_REP_GUNA_VN2" -' cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA"), "1", ab.GetString("TIPO_PAGO"),ab.GetString("a_ticket"),ab.GetString("a_numpago") ) -' 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 -' -'' pedido -' c=Starter.skmt.ExecQuery("SELECT PE_TIPO, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_CLIENTEOR, PE_CAJAS, PE_BCAJAS, CONSECUTIVO, FECHA_PREV, RUTA_REP, PE_REGALO FROM PEDIDO") -' cuantosenvio = cuantosenvio + c.RowCount -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_pedido_REP_GUNA_VN" -' cmd.Parameters = Array As Object(c.GetString("PE_TIPO"), c.GetString("PE_RUTA"), c.GetString("PE_CEDIS"), c.GetString("PE_COSTO_TOT"), c.GetString("PE_COSTOU"), c.GetString("PE_CANT"), c.GetString("PE_PRONOMBRE"), c.GetString("PE_PROID"), c.GetString("PE_CLIENTE"), c.GetString("PE_FECHA"), c.GetString("PE_USUARIO"), c.GetString("PE_CLIENTEOR"), c.GetString("PE_CAJAS"), c.GetString("PE_BCAJAS"), c.GetString("CONSECUTIVO"), c.GetString("FECHA_PREV"), c.GetString("RUTA_REP"), c.GetString("PE_REGALO")) -' reqManager.ExecuteCommand(cmd , "envio_ins_pedido") -' Next -' c.Close -' End If -' -' 'TABULADOR -' c = Starter.skmt.ExecQuery("SELECT VEINTE, DIEZ, CINCO, DOS, PESO, CENTAVO, TOTAL FROM TABULADOR_MONEDAS") -' d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") -' b = Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN") -' f = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") -' d.Position = 0 -' b.Position = 0 -' f.Position = 0 -' cuantosenvio = cuantosenvio + c.RowCount -' If c.RowCount > 0 Then -' For i = 0 To c.RowCount - 1 -' c.Position=i -' Dim cmd As DBCommand -' Dim fechatabulador() As String = Regex.Split(" ", f.GetString("HVD_FECHA")) -' -' Dim fechatabulador3 As String = fechatabulador(0) -' cmd.Initialize -' cmd.Name = "insert_tabulador_monedas_GUNA_VN" -' cmd.Parameters = Array As Object(d.GetString("RUTAA"), b.GetString("ID_ALMACEN"),c.GetString("VEINTE"),c.GetString("DIEZ"),c.GetString("CINCO"),c.GetString("DOS"),c.GetString("PESO"),c.GetString("CENTAVO"),fechatabulador3) -' reqManager.ExecuteCommand(cmd , "envio_ins_tabulador_mon") -' Next -' c.Close -' d.Close -' b.Close -' f.Close -' End If -' c = Starter.skmt.ExecQuery("SELECT MIL, QUINIENTOS, DOCIENTOS, CIEN, CINCUENTA, VEINTE FROM TABULADOR_BILLETES") -' d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") -' b = Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN") -' f = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") -' d.Position = 0 -' b.Position = 0 -' f.Position = 0 -' cuantosenvio = cuantosenvio + c.RowCount -' If c.RowCount > 0 Then -' For i = 0 To c.RowCount - 1 -' c.Position=i -' Dim cmd As DBCommand -' Dim fechatabulador() As String = Regex.Split(" ", f.GetString("HVD_FECHA")) -' Dim fechatabulador3 As String = fechatabulador(0) -' cmd.Initialize -' cmd.Name = "insert_tabulador_billetes_GUNA_VN" -' cmd.Parameters = Array As Object(b.GetString("ID_ALMACEN"), d.GetString("RUTAA"),c.GetString("MIL"),c.GetString("QUINIENTOS"),c.GetString("DOCIENTOS"),c.GetString("CIEN"),c.GetString("CINCUENTA"),c.GetString("VEINTE"),fechatabulador3) -' reqManager.ExecuteCommand(cmd , "envio_ins_tabulador_bill") -' Next -' c.Close -' d.Close -' b.Close -' f.Close -' End If -' 'FIN TABULADOR -' -' -' -' c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RUTA, 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 -'' Log(c.GetString("HVD_CLIENTE")) -' Private d4 As Cursor = Starter.skmt.ExecQuery($"SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO = '${c.GetString("HVD_CLIENTE")}'"$) -' d4.Position = 0 -'' Log(d4.GetString("CAT_CL_RUTA")) -' Private d5 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(Sum(PE_CANT),0) AS PE_CANT FROM PEDIDO WHERE PE_CLIENTEOR = '${c.GetString("HVD_CLIENTE")}' AND PE_PROID = '${c.GetString("HVD_PROID")}' AND CONSECUTIVO = '${c.GetString("CONSECUTIVO")}'"$) -' d5.Position = 0 -' Private restacant As String = d5.GetString("PE_CANT") -' d5.Close -' -' Dim fecha1() As String = Regex.Split(" ", c.GetString("HVD_FECHA")) -' -' Dim fecha3 As String = fecha1(0) -'' Log(fecha3) -' Dim hora() As String = Regex.Split("\.", fecha1(1)) -'' Log(hora(0)) -' -' Dim sDate, sTime As String -' DateTime.DateFormat = "dd/MM/yyyy" -' DateTime.TimeFormat = "HH:mm:ss" -' sDate = DateTime.Date(DateTime.Now) -' sTime = DateTime.Time(DateTime.Now) -' If c.GetString("HVD_RECHAZOCANT") <> "0" Then -'' Log((c.GetString("HVD_RECHAZOCANT")-restacant)) -' cmd.Initialize -' -' 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), c.GetString("HVD_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) + 'ABONOS + d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") + d.Position = 0 + Dim ab As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_tipoabono 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 NULL"$) + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT 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_VN2" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA"), "", ab.GetString("TIPO_PAGO"),ab.GetString("a_ticket"),ab.GetString("a_numpago")) + 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 + + + c=Starter.skmt.ExecQuery("SELECT RUTA_PREV, RUTA_REP, FECHA_PREV, FECHA, ALMACEN, NUM_TICKET, MONTO, METODO_PAGO, USUARIO, CLIENTE, NUM_PAGO FROM CONTADOS") + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_CONTADO_GUNA_VN" + cmd.Parameters = Array As Object(c.GetString("RUTA_PREV"), c.GetString("RUTA_REP"), c.GetString("FECHA_PREV"), c.GetString("ALMACEN"), c.GetString("NUM_TICKET"),NumberFormat2(c.GetString("MONTO").Replace(",",""),0,2,2,False) , c.GetString("METODO_PAGO"), c.GetString("USUARIO"), c.GetString("CLIENTE"), c.GetString("NUM_PAGO")) + reqManager.ExecuteCommand(cmd , "ins_CONTADOS") + Next + c.Close + End If + + '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_tipoabono IS NOT 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"$) + Dim ab1 As Cursor = Starter.skmt.ExecQuery($"SELECT a_abono from ABONOS where a_cliente = '${ab.GetString("a_cliente")}' and a_tipoabono IS NOT NULL"$) + ab1.Position = 0 + + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_abono_REP_GUNA_VN2" + cmd.Parameters = Array As Object( ab.GetString("a_usuario"), ab.GetString("a_ruta"), ab.GetString("a_cliente"), NumberFormat2(ab.GetString("a_abono"),0,2,2,False), ab.GetString("a_fecha"),ALMACEN,"REPARTO",d.GetString("RUTAA"), "1", ab.GetString("TIPO_PAGO"),ab.GetString("a_ticket"),ab.GetString("a_numpago") ) + 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 + +' pedido + c=Starter.skmt.ExecQuery("SELECT PE_TIPO, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_CLIENTEOR, PE_CAJAS, PE_BCAJAS, CONSECUTIVO, FECHA_PREV, RUTA_REP, PE_REGALO FROM PEDIDO") + cuantosenvio = cuantosenvio + c.RowCount + If c.RowCount>0 Then + For i=0 To c.RowCount -1 + c.Position=i + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_pedido_REP_GUNA_VN" + cmd.Parameters = Array As Object(c.GetString("PE_TIPO"), c.GetString("PE_RUTA"), c.GetString("PE_CEDIS"), c.GetString("PE_COSTO_TOT"), c.GetString("PE_COSTOU"), c.GetString("PE_CANT"), c.GetString("PE_PRONOMBRE"), c.GetString("PE_PROID"), c.GetString("PE_CLIENTE"), c.GetString("PE_FECHA"), c.GetString("PE_USUARIO"), c.GetString("PE_CLIENTEOR"), c.GetString("PE_CAJAS"), c.GetString("PE_BCAJAS"), c.GetString("CONSECUTIVO"), c.GetString("FECHA_PREV"), c.GetString("RUTA_REP"), c.GetString("PE_REGALO")) + reqManager.ExecuteCommand(cmd , "envio_ins_pedido") + Next + c.Close + End If + + 'TABULADOR + c = Starter.skmt.ExecQuery("SELECT VEINTE, DIEZ, CINCO, DOS, PESO, CENTAVO, TOTAL FROM TABULADOR_MONEDAS") + d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") + b = Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN") + f = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") + d.Position = 0 + b.Position = 0 + f.Position = 0 + cuantosenvio = cuantosenvio + c.RowCount + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + Dim fechatabulador() As String = Regex.Split(" ", f.GetString("HVD_FECHA")) + + Dim fechatabulador3 As String = fechatabulador(0) + cmd.Initialize + cmd.Name = "insert_tabulador_monedas_GUNA_VN" + cmd.Parameters = Array As Object(d.GetString("RUTAA"), b.GetString("ID_ALMACEN"),c.GetString("VEINTE"),c.GetString("DIEZ"),c.GetString("CINCO"),c.GetString("DOS"),c.GetString("PESO"),c.GetString("CENTAVO"),fechatabulador3) + reqManager.ExecuteCommand(cmd , "envio_ins_tabulador_mon") + Next + c.Close + d.Close + b.Close + f.Close + End If + c = Starter.skmt.ExecQuery("SELECT MIL, QUINIENTOS, DOCIENTOS, CIEN, CINCUENTA, VEINTE FROM TABULADOR_BILLETES") + d = Starter.skmt.ExecQuery("SELECT RUTAA FROM RUTAA") + b = Starter.skmt.ExecQuery("SELECT ID_ALMACEN FROM CAT_ALMACEN") + f = Starter.skmt.ExecQuery("SELECT HVD_FECHA FROM HIST_VENTAS") + d.Position = 0 + b.Position = 0 + f.Position = 0 + cuantosenvio = cuantosenvio + c.RowCount + If c.RowCount > 0 Then + For i = 0 To c.RowCount - 1 + c.Position=i + Dim cmd As DBCommand + Dim fechatabulador() As String = Regex.Split(" ", f.GetString("HVD_FECHA")) + Dim fechatabulador3 As String = fechatabulador(0) + cmd.Initialize + cmd.Name = "insert_tabulador_billetes_GUNA_VN" + cmd.Parameters = Array As Object(b.GetString("ID_ALMACEN"), d.GetString("RUTAA"),c.GetString("MIL"),c.GetString("QUINIENTOS"),c.GetString("DOCIENTOS"),c.GetString("CIEN"),c.GetString("CINCUENTA"),c.GetString("VEINTE"),fechatabulador3) + reqManager.ExecuteCommand(cmd , "envio_ins_tabulador_bill") + Next + c.Close + d.Close + b.Close + f.Close + End If + 'FIN TABULADOR + + + + c = Starter.skmt.ExecQuery("SELECT IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_RUTA, 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 +' Log(c.GetString("HVD_CLIENTE")) + Private d4 As Cursor = Starter.skmt.ExecQuery($"SELECT CAT_CL_RUTA FROM kmt_info WHERE CAT_CL_CODIGO = '${c.GetString("HVD_CLIENTE")}'"$) + d4.Position = 0 +' Log(d4.GetString("CAT_CL_RUTA")) + Private d5 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(Sum(PE_CANT),0) AS PE_CANT FROM PEDIDO WHERE PE_CLIENTEOR = '${c.GetString("HVD_CLIENTE")}' AND PE_PROID = '${c.GetString("HVD_PROID")}' AND CONSECUTIVO = '${c.GetString("CONSECUTIVO")}'"$) + d5.Position = 0 + Private restacant As String = d5.GetString("PE_CANT") + d5.Close + + Dim fecha1() As String = Regex.Split(" ", c.GetString("HVD_FECHA")) + + Dim fecha3 As String = fecha1(0) +' Log(fecha3) + Dim hora() As String = Regex.Split("\.", fecha1(1)) +' Log(hora(0)) + + Dim sDate, sTime As String + DateTime.DateFormat = "dd/MM/yyyy" + DateTime.TimeFormat = "HH:mm:ss" + sDate = DateTime.Date(DateTime.Now) + sTime = DateTime.Time(DateTime.Now) + If c.GetString("HVD_RECHAZOCANT") <> "0" Then +' Log((c.GetString("HVD_RECHAZOCANT")-restacant)) + cmd.Initialize + + 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), c.GetString("HVD_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_RECHAZOCANT"),sDate& " "& sTime,1,Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), Subs.traeRuta(c.GetString("HVD_CLIENTE")),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_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")) + reqManager.ExecuteCommand(cmd, "update_hvd") +' Log("ENVIE RECHAZO") + Else + cmd.Initialize + cmd.Name = "update_HVD_GUNA_VN2" + cmd.Parameters = Array As String("","","0",Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), c.GetString("HVD_RUTA"),ALMACEN,l_ruta.Text,c.GetString("HVD_CODPROMO"),c.GetString("HVD_NUM_TICKET"), c.GetString("HVD_CANT")) ' cmd.Parameters = Array As String("","","0",Subs.traeUsuario, c.GetString("HVD_CLIENTE"), c.GetString("HVD_PROID"),fecha3&" "&hora(0), Subs.traeRuta(c.GetString("HVD_CLIENTE")),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 -' Next -' End If -' c.Close -' -' Dim ab2 As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS"$) -' Dim ab3 As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_tipoabono IS NULL"$) -' Dim ab3_1 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(SUM(a_abono),0) AS SUMABO from ABONOS where a_tipoabono IS NULL"$) -' ab3_1.Position = 0 -' -' Dim ab4 As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_tipoabono IS NOT NULL"$) -' Dim ab4_1 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(SUM(a_abono),0) AS SUMABO from ABONOS where a_tipoabono IS NOT NULL"$) -' ab4_1.Position = 0 -' -' Dim pa2 As Cursor =Starter.skmt.ExecQuery("select PA_ALMACEN,PA_RUTA_REP,PA_RUTAPREV,PA_FECHA_PREV,PA_CAPTURA,PA_MONTO,PA_USUARIO,PA_CLIENTE,IFNULL(PA_CANCELADO,0) AS PA_CANCELADO from PAGARES") -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_drop_rep_GUNA_VN2" -' cmd.Parameters = Array As Object(Subs.dameUsuarioDeDB, l_ruta.Text, ALMACEN, l_ctast.text, Subs.traeEntregados, Subs.traeRechazados, "ENVIO",l_pagaresnuevos.Text, pa2.RowCount, l_pagarescobrados.Text,ab2.RowCount,NumberFormat2( ab3_1.GetDouble("SUMABO"),0,2,2,False), ab3.RowCount, NumberFormat2( ab4_1.GetDouble("SUMABO"),0,2,2,False), ab4.RowCount ) -' reqManager.ExecuteCommand(cmd , "inst_drop") + reqManager.ExecuteCommand(cmd, "update_hvd") + End If + d4.Close + Next + End If + c.Close + + Dim ab2 As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS"$) + Dim ab3 As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_tipoabono IS NULL"$) + Dim ab3_1 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(SUM(a_abono),0) AS SUMABO from ABONOS where a_tipoabono IS NULL"$) + ab3_1.Position = 0 + + Dim ab4 As Cursor = Starter.skmt.ExecQuery($"SELECT * from ABONOS where a_tipoabono IS NOT NULL"$) + Dim ab4_1 As Cursor = Starter.skmt.ExecQuery($"SELECT IFNULL(SUM(a_abono),0) AS SUMABO from ABONOS where a_tipoabono IS NOT NULL"$) + ab4_1.Position = 0 + + Dim pa2 As Cursor =Starter.skmt.ExecQuery("select PA_ALMACEN,PA_RUTA_REP,PA_RUTAPREV,PA_FECHA_PREV,PA_CAPTURA,PA_MONTO,PA_USUARIO,PA_CLIENTE,IFNULL(PA_CANCELADO,0) AS PA_CANCELADO from PAGARES") + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_drop_rep_GUNA_VN2" + cmd.Parameters = Array As Object(Subs.dameUsuarioDeDB, l_ruta.Text, ALMACEN, l_ctast.text, Subs.traeEntregados, Subs.traeRechazados, "ENVIO",l_pagaresnuevos.Text, pa2.RowCount, l_pagarescobrados.Text,ab2.RowCount,NumberFormat2( ab3_1.GetDouble("SUMABO"),0,2,2,False), ab3.RowCount, NumberFormat2( ab4_1.GetDouble("SUMABO"),0,2,2,False), ab4.RowCount ) + reqManager.ExecuteCommand(cmd , "inst_drop") ' ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) End Sub diff --git a/B4A/guna_reparto.b4a b/B4A/guna_reparto.b4a index ee94a6b..04b8fd4 100644 --- a/B4A/guna_reparto.b4a +++ b/B4A/guna_reparto.b4a @@ -262,7 +262,7 @@ Version=12.8 #Region Project Attributes #ApplicationLabel: Guna Reparto #VersionCode: 1 - #VersionName: 6.02.26 + #VersionName: 6.04.02_01 '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 1e6c66f..6e23587 100644 --- a/B4A/guna_reparto.b4a.meta +++ b/B4A/guna_reparto.b4a.meta @@ -97,6 +97,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Cliente,imp,5942,1,C_Cliente,B_IMP_Click,1557,1,C_Cliente,Guardado,1302,0,Main,Activity_Create,32,0,C_Principal,JobDone,1660,0,Main,Activity_ActionBarHomeClick,37,0,MAPA_RUTAS,MapFragment1_Ready,146,0,C_Principal,envioinfo,992,0,C_Principal,Class_Globals,7,0,C_Principal,B4XPage_Appear,215,0 +NavigationStack=Subs,traeCliente,784,0,Subs,traefECHAPREV,1087,0,Tracker,CreateLocationRequest,145,0,C_Cliente,HIST_Click,1446,0,C_Cliente,gest_Click,834,0,C_DetalleVenta,b_prodMenos_Click,576,0,C_Principal,Class_Globals,0,0,Subs,guardaAppInfo,1164,0,Main,Activity_Create,25,0,C_Principal,B4XPage_Appear,219,0 SelectedBuild=0 VisibleModules=2,17,5,6,8,10,31,30,28,7