diff --git a/B4A/ADM.b4a b/B4A/ADM.b4a
index f19c9f5..3647c1d 100644
--- a/B4A/ADM.b4a
+++ b/B4A/ADM.b4a
@@ -1,527 +1,528 @@
Build1=Default,adm.keymon.com.mx,HU2_PUBLIC
File1=abordo.png
-File10=datoscliente.bal
-File100=marker-azul-19.png
-File101=marker-azul-2.png
-File102=marker-azul-20.png
-File103=marker-azul-21.png
-File104=marker-azul-22.png
-File105=marker-azul-23.png
-File106=marker-azul-24.png
-File107=marker-azul-25.png
-File108=marker-azul-26.png
-File109=marker-azul-27.png
-File11=datosclienteBotones.bal
-File110=marker-azul-28.png
-File111=marker-azul-29.png
-File112=marker-azul-3.png
-File113=marker-azul-30.png
-File114=marker-azul-31.png
-File115=marker-azul-32.png
-File116=marker-azul-33.png
-File117=marker-azul-34.png
-File118=marker-azul-35.png
-File119=marker-azul-36.png
-File12=desvanecido.png
-File120=marker-azul-37.png
-File121=marker-azul-38.png
-File122=marker-azul-39.png
-File123=marker-azul-4.png
-File124=marker-azul-40.png
-File125=marker-azul-41.png
-File126=marker-azul-42.png
-File127=marker-azul-43.png
-File128=marker-azul-44.png
-File129=marker-azul-45.png
-File13=durakelo.png
-File130=marker-azul-46.png
-File131=marker-azul-47.png
-File132=marker-azul-48.png
-File133=marker-azul-49.png
-File134=marker-azul-5.png
-File135=marker-azul-50.png
-File136=marker-azul-51.png
-File137=marker-azul-52.png
-File138=marker-azul-53.png
-File139=marker-azul-54.png
-File14=engrane.jpg
-File140=marker-azul-55.png
-File141=marker-azul-56.png
-File142=marker-azul-57.png
-File143=marker-azul-58.png
-File144=marker-azul-59.png
-File145=marker-azul-6.png
-File146=marker-azul-60.png
-File147=marker-azul-61.png
-File148=marker-azul-62.png
-File149=marker-azul-63.png
-File15=engrane.png
-File150=marker-azul-64.png
-File151=marker-azul-65.png
-File152=marker-azul-66.png
-File153=marker-azul-67.png
-File154=marker-azul-68.png
-File155=marker-azul-69.png
-File156=marker-azul-7.png
-File157=marker-azul-70.png
-File158=marker-azul-71.png
-File159=marker-azul-72.png
-File16=engrane_gris.png
-File160=marker-azul-73.png
-File161=marker-azul-74.png
-File162=marker-azul-75.png
-File163=marker-azul-76.png
-File164=marker-azul-77.png
-File165=marker-azul-78.png
-File166=marker-azul-79.png
-File167=marker-azul-8.png
-File168=marker-azul-80.png
-File169=marker-azul-81.png
-File17=folioabono.bal
-File170=marker-azul-82.png
-File171=marker-azul-83.png
-File172=marker-azul-84.png
-File173=marker-azul-85.png
-File174=marker-azul-86.png
-File175=marker-azul-87.png
-File176=marker-azul-88.png
-File177=marker-azul-89.png
-File178=marker-azul-9.png
-File179=marker-azul-90.png
-File18=fondo_kmt.jpg
-File180=marker-azul-91.png
-File181=marker-azul-92.png
-File182=marker-azul-93.png
-File183=marker-azul-94.png
-File184=marker-azul-95.png
-File185=marker-azul-96.png
-File186=marker-azul-97.png
-File187=marker-azul-98.png
-File188=marker-azul-99.png
-File189=marker-rojo-0.png
-File19=gps20.png
-File190=marker-rojo-1.png
-File191=marker-rojo-10.png
-File192=marker-rojo-100.png
-File193=marker-rojo-101.png
-File194=marker-rojo-102.png
-File195=marker-rojo-103.png
-File196=marker-rojo-104.png
-File197=marker-rojo-105.png
-File198=marker-rojo-106.png
-File199=marker-rojo-107.png
+File10=clientes.bal
+File100=marker-azul-18.png
+File101=marker-azul-19.png
+File102=marker-azul-2.png
+File103=marker-azul-20.png
+File104=marker-azul-21.png
+File105=marker-azul-22.png
+File106=marker-azul-23.png
+File107=marker-azul-24.png
+File108=marker-azul-25.png
+File109=marker-azul-26.png
+File11=datoscliente.bal
+File110=marker-azul-27.png
+File111=marker-azul-28.png
+File112=marker-azul-29.png
+File113=marker-azul-3.png
+File114=marker-azul-30.png
+File115=marker-azul-31.png
+File116=marker-azul-32.png
+File117=marker-azul-33.png
+File118=marker-azul-34.png
+File119=marker-azul-35.png
+File12=datosclienteBotones.bal
+File120=marker-azul-36.png
+File121=marker-azul-37.png
+File122=marker-azul-38.png
+File123=marker-azul-39.png
+File124=marker-azul-4.png
+File125=marker-azul-40.png
+File126=marker-azul-41.png
+File127=marker-azul-42.png
+File128=marker-azul-43.png
+File129=marker-azul-44.png
+File13=desvanecido.png
+File130=marker-azul-45.png
+File131=marker-azul-46.png
+File132=marker-azul-47.png
+File133=marker-azul-48.png
+File134=marker-azul-49.png
+File135=marker-azul-5.png
+File136=marker-azul-50.png
+File137=marker-azul-51.png
+File138=marker-azul-52.png
+File139=marker-azul-53.png
+File14=durakelo.png
+File140=marker-azul-54.png
+File141=marker-azul-55.png
+File142=marker-azul-56.png
+File143=marker-azul-57.png
+File144=marker-azul-58.png
+File145=marker-azul-59.png
+File146=marker-azul-6.png
+File147=marker-azul-60.png
+File148=marker-azul-61.png
+File149=marker-azul-62.png
+File15=engrane.jpg
+File150=marker-azul-63.png
+File151=marker-azul-64.png
+File152=marker-azul-65.png
+File153=marker-azul-66.png
+File154=marker-azul-67.png
+File155=marker-azul-68.png
+File156=marker-azul-69.png
+File157=marker-azul-7.png
+File158=marker-azul-70.png
+File159=marker-azul-71.png
+File16=engrane.png
+File160=marker-azul-72.png
+File161=marker-azul-73.png
+File162=marker-azul-74.png
+File163=marker-azul-75.png
+File164=marker-azul-76.png
+File165=marker-azul-77.png
+File166=marker-azul-78.png
+File167=marker-azul-79.png
+File168=marker-azul-8.png
+File169=marker-azul-80.png
+File17=engrane_gris.png
+File170=marker-azul-81.png
+File171=marker-azul-82.png
+File172=marker-azul-83.png
+File173=marker-azul-84.png
+File174=marker-azul-85.png
+File175=marker-azul-86.png
+File176=marker-azul-87.png
+File177=marker-azul-88.png
+File178=marker-azul-89.png
+File179=marker-azul-9.png
+File18=folioabono.bal
+File180=marker-azul-90.png
+File181=marker-azul-91.png
+File182=marker-azul-92.png
+File183=marker-azul-93.png
+File184=marker-azul-94.png
+File185=marker-azul-95.png
+File186=marker-azul-96.png
+File187=marker-azul-97.png
+File188=marker-azul-98.png
+File189=marker-azul-99.png
+File19=fondo_kmt.jpg
+File190=marker-rojo-0.png
+File191=marker-rojo-1.png
+File192=marker-rojo-10.png
+File193=marker-rojo-100.png
+File194=marker-rojo-101.png
+File195=marker-rojo-102.png
+File196=marker-rojo-103.png
+File197=marker-rojo-104.png
+File198=marker-rojo-105.png
+File199=marker-rojo-106.png
File2=alert2.png
-File20=guna-fondo.jpg
-File200=marker-rojo-108.png
-File201=marker-rojo-109.png
-File202=marker-rojo-11.png
-File203=marker-rojo-110.png
-File204=marker-rojo-111.png
-File205=marker-rojo-112.png
-File206=marker-rojo-113.png
-File207=marker-rojo-114.png
-File208=marker-rojo-115.png
-File209=marker-rojo-116.png
-File21=Hacer pedido.jpg
-File210=marker-rojo-117.png
-File211=marker-rojo-118.png
-File212=marker-rojo-119.png
-File213=marker-rojo-12.png
-File214=marker-rojo-120.png
-File215=marker-rojo-121.png
-File216=marker-rojo-122.png
-File217=marker-rojo-123.png
-File218=marker-rojo-124.png
-File219=marker-rojo-125.png
-File22=hacerpedido30.jpg
-File220=marker-rojo-126.png
-File221=marker-rojo-127.png
-File222=marker-rojo-128.png
-File223=marker-rojo-129.png
-File224=marker-rojo-13.png
-File225=marker-rojo-130.png
-File226=marker-rojo-131.png
-File227=marker-rojo-132.png
-File228=marker-rojo-133.png
-File229=marker-rojo-134.png
-File23=hacerpedido30.png
-File230=marker-rojo-135.png
-File231=marker-rojo-136.png
-File232=marker-rojo-137.png
-File233=marker-rojo-138.png
-File234=marker-rojo-139.png
-File235=marker-rojo-14.png
-File236=marker-rojo-140.png
-File237=marker-rojo-141.png
-File238=marker-rojo-142.png
-File239=marker-rojo-143.png
-File24=intmex_logo_192x192.jpg
-File240=marker-rojo-144.png
-File241=marker-rojo-145.png
-File242=marker-rojo-146.png
-File243=marker-rojo-147.png
-File244=marker-rojo-148.png
-File245=marker-rojo-149.png
-File246=marker-rojo-15.png
-File247=marker-rojo-150.png
-File248=marker-rojo-16.png
-File249=marker-rojo-17.png
-File25=intmex_logo_192x192.png
-File250=marker-rojo-18.png
-File251=marker-rojo-19.png
-File252=marker-rojo-2.png
-File253=marker-rojo-20.png
-File254=marker-rojo-21.png
-File255=marker-rojo-22.png
-File256=marker-rojo-23.png
-File257=marker-rojo-24.png
-File258=marker-rojo-25.png
-File259=marker-rojo-26.png
-File26=intmex_logo_192x192_old.jpg
-File260=marker-rojo-27.png
-File261=marker-rojo-28.png
-File262=marker-rojo-29.png
-File263=marker-rojo-3.png
-File264=marker-rojo-30.png
-File265=marker-rojo-31.png
-File266=marker-rojo-32.png
-File267=marker-rojo-33.png
-File268=marker-rojo-34.png
-File269=marker-rojo-35.png
-File27=itembuttonblue.png
-File270=marker-rojo-36.png
-File271=marker-rojo-37.png
-File272=marker-rojo-38.png
-File273=marker-rojo-39.png
-File274=marker-rojo-4.png
-File275=marker-rojo-40.png
-File276=marker-rojo-41.png
-File277=marker-rojo-42.png
-File278=marker-rojo-43.png
-File279=marker-rojo-44.png
-File28=kmt.db
-File280=marker-rojo-45.png
-File281=marker-rojo-46.png
-File282=marker-rojo-47.png
-File283=marker-rojo-48.png
-File284=marker-rojo-49.png
-File285=marker-rojo-5.png
-File286=marker-rojo-50.png
-File287=marker-rojo-51.png
-File288=marker-rojo-52.png
-File289=marker-rojo-53.png
-File29=login.bal
-File290=marker-rojo-54.png
-File291=marker-rojo-55.png
-File292=marker-rojo-56.png
-File293=marker-rojo-57.png
-File294=marker-rojo-58.png
-File295=marker-rojo-59.png
-File296=marker-rojo-6.png
-File297=marker-rojo-60.png
-File298=marker-rojo-61.png
-File299=marker-rojo-62.png
+File20=gps20.png
+File200=marker-rojo-107.png
+File201=marker-rojo-108.png
+File202=marker-rojo-109.png
+File203=marker-rojo-11.png
+File204=marker-rojo-110.png
+File205=marker-rojo-111.png
+File206=marker-rojo-112.png
+File207=marker-rojo-113.png
+File208=marker-rojo-114.png
+File209=marker-rojo-115.png
+File21=guna-fondo.jpg
+File210=marker-rojo-116.png
+File211=marker-rojo-117.png
+File212=marker-rojo-118.png
+File213=marker-rojo-119.png
+File214=marker-rojo-12.png
+File215=marker-rojo-120.png
+File216=marker-rojo-121.png
+File217=marker-rojo-122.png
+File218=marker-rojo-123.png
+File219=marker-rojo-124.png
+File22=Hacer pedido.jpg
+File220=marker-rojo-125.png
+File221=marker-rojo-126.png
+File222=marker-rojo-127.png
+File223=marker-rojo-128.png
+File224=marker-rojo-129.png
+File225=marker-rojo-13.png
+File226=marker-rojo-130.png
+File227=marker-rojo-131.png
+File228=marker-rojo-132.png
+File229=marker-rojo-133.png
+File23=hacerpedido30.jpg
+File230=marker-rojo-134.png
+File231=marker-rojo-135.png
+File232=marker-rojo-136.png
+File233=marker-rojo-137.png
+File234=marker-rojo-138.png
+File235=marker-rojo-139.png
+File236=marker-rojo-14.png
+File237=marker-rojo-140.png
+File238=marker-rojo-141.png
+File239=marker-rojo-142.png
+File24=hacerpedido30.png
+File240=marker-rojo-143.png
+File241=marker-rojo-144.png
+File242=marker-rojo-145.png
+File243=marker-rojo-146.png
+File244=marker-rojo-147.png
+File245=marker-rojo-148.png
+File246=marker-rojo-149.png
+File247=marker-rojo-15.png
+File248=marker-rojo-150.png
+File249=marker-rojo-16.png
+File25=intmex_logo_192x192.jpg
+File250=marker-rojo-17.png
+File251=marker-rojo-18.png
+File252=marker-rojo-19.png
+File253=marker-rojo-2.png
+File254=marker-rojo-20.png
+File255=marker-rojo-21.png
+File256=marker-rojo-22.png
+File257=marker-rojo-23.png
+File258=marker-rojo-24.png
+File259=marker-rojo-25.png
+File26=intmex_logo_192x192.png
+File260=marker-rojo-26.png
+File261=marker-rojo-27.png
+File262=marker-rojo-28.png
+File263=marker-rojo-29.png
+File264=marker-rojo-3.png
+File265=marker-rojo-30.png
+File266=marker-rojo-31.png
+File267=marker-rojo-32.png
+File268=marker-rojo-33.png
+File269=marker-rojo-34.png
+File27=intmex_logo_192x192_old.jpg
+File270=marker-rojo-35.png
+File271=marker-rojo-36.png
+File272=marker-rojo-37.png
+File273=marker-rojo-38.png
+File274=marker-rojo-39.png
+File275=marker-rojo-4.png
+File276=marker-rojo-40.png
+File277=marker-rojo-41.png
+File278=marker-rojo-42.png
+File279=marker-rojo-43.png
+File28=itembuttonblue.png
+File280=marker-rojo-44.png
+File281=marker-rojo-45.png
+File282=marker-rojo-46.png
+File283=marker-rojo-47.png
+File284=marker-rojo-48.png
+File285=marker-rojo-49.png
+File286=marker-rojo-5.png
+File287=marker-rojo-50.png
+File288=marker-rojo-51.png
+File289=marker-rojo-52.png
+File29=kmt.db
+File290=marker-rojo-53.png
+File291=marker-rojo-54.png
+File292=marker-rojo-55.png
+File293=marker-rojo-56.png
+File294=marker-rojo-57.png
+File295=marker-rojo-58.png
+File296=marker-rojo-59.png
+File297=marker-rojo-6.png
+File298=marker-rojo-60.png
+File299=marker-rojo-61.png
File3=alerta_amarilla.png
-File30=Logo_192x192.jpg
-File300=marker-rojo-63.png
-File301=marker-rojo-64.png
-File302=marker-rojo-65.png
-File303=marker-rojo-66.png
-File304=marker-rojo-67.png
-File305=marker-rojo-68.png
-File306=marker-rojo-69.png
-File307=marker-rojo-7.png
-File308=marker-rojo-70.png
-File309=marker-rojo-71.png
-File31=logo_mariana.jpeg
-File310=marker-rojo-72.png
-File311=marker-rojo-73.png
-File312=marker-rojo-74.png
-File313=marker-rojo-75.png
-File314=marker-rojo-76.png
-File315=marker-rojo-77.png
-File316=marker-rojo-78.png
-File317=marker-rojo-79.png
-File318=marker-rojo-8.png
-File319=marker-rojo-80.png
-File32=MainPage.bal
-File320=marker-rojo-81.png
-File321=marker-rojo-82.png
-File322=marker-rojo-83.png
-File323=marker-rojo-84.png
-File324=marker-rojo-85.png
-File325=marker-rojo-86.png
-File326=marker-rojo-87.png
-File327=marker-rojo-88.png
-File328=marker-rojo-89.png
-File329=marker-rojo-9.png
-File33=Malo.jpg
-File330=marker-rojo-90.png
-File331=marker-rojo-91.png
-File332=marker-rojo-92.png
-File333=marker-rojo-93.png
-File334=marker-rojo-94.png
-File335=marker-rojo-95.png
-File336=marker-rojo-96.png
-File337=marker-rojo-97.png
-File338=marker-rojo-98.png
-File339=marker-rojo-99.png
-File34=mapa_rutas.bal
-File340=marker-verde-0.png
-File341=marker-verde-1.png
-File342=marker-verde-10.png
-File343=marker-verde-100.png
-File344=marker-verde-101.png
-File345=marker-verde-102.png
-File346=marker-verde-103.png
-File347=marker-verde-104.png
-File348=marker-verde-105.png
-File349=marker-verde-106.png
-File35=mariana.jpg
-File350=marker-verde-107.png
-File351=marker-verde-108.png
-File352=marker-verde-109.png
-File353=marker-verde-11.png
-File354=marker-verde-110.png
-File355=marker-verde-111.png
-File356=marker-verde-112.png
-File357=marker-verde-113.png
-File358=marker-verde-114.png
-File359=marker-verde-115.png
-File36=mariana_ico.png
-File360=marker-verde-116.png
-File361=marker-verde-117.png
-File362=marker-verde-118.png
-File363=marker-verde-119.png
-File364=marker-verde-12.png
-File365=marker-verde-120.png
-File366=marker-verde-121.png
-File367=marker-verde-122.png
-File368=marker-verde-123.png
-File369=marker-verde-124.png
-File37=mariana1.jpg
-File370=marker-verde-125.png
-File371=marker-verde-126.png
-File372=marker-verde-127.png
-File373=marker-verde-128.png
-File374=marker-verde-129.png
-File375=marker-verde-13.png
-File376=marker-verde-130.png
-File377=marker-verde-131.png
-File378=marker-verde-132.png
-File379=marker-verde-133.png
-File38=marker-azul-0.png
-File380=marker-verde-134.png
-File381=marker-verde-135.png
-File382=marker-verde-136.png
-File383=marker-verde-137.png
-File384=marker-verde-138.png
-File385=marker-verde-139.png
-File386=marker-verde-14.png
-File387=marker-verde-140.png
-File388=marker-verde-141.png
-File389=marker-verde-142.png
-File39=marker-azul-1.png
-File390=marker-verde-143.png
-File391=marker-verde-144.png
-File392=marker-verde-145.png
-File393=marker-verde-146.png
-File394=marker-verde-147.png
-File395=marker-verde-148.png
-File396=marker-verde-149.png
-File397=marker-verde-15.png
-File398=marker-verde-150.png
-File399=marker-verde-16.png
+File30=login.bal
+File300=marker-rojo-62.png
+File301=marker-rojo-63.png
+File302=marker-rojo-64.png
+File303=marker-rojo-65.png
+File304=marker-rojo-66.png
+File305=marker-rojo-67.png
+File306=marker-rojo-68.png
+File307=marker-rojo-69.png
+File308=marker-rojo-7.png
+File309=marker-rojo-70.png
+File31=Logo_192x192.jpg
+File310=marker-rojo-71.png
+File311=marker-rojo-72.png
+File312=marker-rojo-73.png
+File313=marker-rojo-74.png
+File314=marker-rojo-75.png
+File315=marker-rojo-76.png
+File316=marker-rojo-77.png
+File317=marker-rojo-78.png
+File318=marker-rojo-79.png
+File319=marker-rojo-8.png
+File32=logo_mariana.jpeg
+File320=marker-rojo-80.png
+File321=marker-rojo-81.png
+File322=marker-rojo-82.png
+File323=marker-rojo-83.png
+File324=marker-rojo-84.png
+File325=marker-rojo-85.png
+File326=marker-rojo-86.png
+File327=marker-rojo-87.png
+File328=marker-rojo-88.png
+File329=marker-rojo-89.png
+File33=MainPage.bal
+File330=marker-rojo-9.png
+File331=marker-rojo-90.png
+File332=marker-rojo-91.png
+File333=marker-rojo-92.png
+File334=marker-rojo-93.png
+File335=marker-rojo-94.png
+File336=marker-rojo-95.png
+File337=marker-rojo-96.png
+File338=marker-rojo-97.png
+File339=marker-rojo-98.png
+File34=Malo.jpg
+File340=marker-rojo-99.png
+File341=marker-verde-0.png
+File342=marker-verde-1.png
+File343=marker-verde-10.png
+File344=marker-verde-100.png
+File345=marker-verde-101.png
+File346=marker-verde-102.png
+File347=marker-verde-103.png
+File348=marker-verde-104.png
+File349=marker-verde-105.png
+File35=mapa_rutas.bal
+File350=marker-verde-106.png
+File351=marker-verde-107.png
+File352=marker-verde-108.png
+File353=marker-verde-109.png
+File354=marker-verde-11.png
+File355=marker-verde-110.png
+File356=marker-verde-111.png
+File357=marker-verde-112.png
+File358=marker-verde-113.png
+File359=marker-verde-114.png
+File36=mariana.jpg
+File360=marker-verde-115.png
+File361=marker-verde-116.png
+File362=marker-verde-117.png
+File363=marker-verde-118.png
+File364=marker-verde-119.png
+File365=marker-verde-12.png
+File366=marker-verde-120.png
+File367=marker-verde-121.png
+File368=marker-verde-122.png
+File369=marker-verde-123.png
+File37=mariana_ico.png
+File370=marker-verde-124.png
+File371=marker-verde-125.png
+File372=marker-verde-126.png
+File373=marker-verde-127.png
+File374=marker-verde-128.png
+File375=marker-verde-129.png
+File376=marker-verde-13.png
+File377=marker-verde-130.png
+File378=marker-verde-131.png
+File379=marker-verde-132.png
+File38=mariana1.jpg
+File380=marker-verde-133.png
+File381=marker-verde-134.png
+File382=marker-verde-135.png
+File383=marker-verde-136.png
+File384=marker-verde-137.png
+File385=marker-verde-138.png
+File386=marker-verde-139.png
+File387=marker-verde-14.png
+File388=marker-verde-140.png
+File389=marker-verde-141.png
+File39=marker-azul-0.png
+File390=marker-verde-142.png
+File391=marker-verde-143.png
+File392=marker-verde-144.png
+File393=marker-verde-145.png
+File394=marker-verde-146.png
+File395=marker-verde-147.png
+File396=marker-verde-148.png
+File397=marker-verde-149.png
+File398=marker-verde-15.png
+File399=marker-verde-150.png
File4=anterior.jpg
-File40=marker-azul-10.png
-File400=marker-verde-17.png
-File401=marker-verde-18.png
-File402=marker-verde-19.png
-File403=marker-verde-2.png
-File404=marker-verde-20.png
-File405=marker-verde-21.png
-File406=marker-verde-22.png
-File407=marker-verde-23.png
-File408=marker-verde-24.png
-File409=marker-verde-25.png
-File41=marker-azul-100.png
-File410=marker-verde-26.png
-File411=marker-verde-27.png
-File412=marker-verde-28.png
-File413=marker-verde-29.png
-File414=marker-verde-3.png
-File415=marker-verde-30.png
-File416=marker-verde-31.png
-File417=marker-verde-32.png
-File418=marker-verde-33.png
-File419=marker-verde-34.png
-File42=marker-azul-101.png
-File420=marker-verde-35.png
-File421=marker-verde-36.png
-File422=marker-verde-37.png
-File423=marker-verde-38.png
-File424=marker-verde-39.png
-File425=marker-verde-4.png
-File426=marker-verde-40.png
-File427=marker-verde-41.png
-File428=marker-verde-42.png
-File429=marker-verde-43.png
-File43=marker-azul-102.png
-File430=marker-verde-44.png
-File431=marker-verde-45.png
-File432=marker-verde-46.png
-File433=marker-verde-47.png
-File434=marker-verde-48.png
-File435=marker-verde-49.png
-File436=marker-verde-5.png
-File437=marker-verde-50.png
-File438=marker-verde-51.png
-File439=marker-verde-52.png
-File44=marker-azul-103.png
-File440=marker-verde-53.png
-File441=marker-verde-54.png
-File442=marker-verde-55.png
-File443=marker-verde-56.png
-File444=marker-verde-57.png
-File445=marker-verde-58.png
-File446=marker-verde-59.png
-File447=marker-verde-6.png
-File448=marker-verde-60.png
-File449=marker-verde-61.png
-File45=marker-azul-104.png
-File450=marker-verde-62.png
-File451=marker-verde-63.png
-File452=marker-verde-64.png
-File453=marker-verde-65.png
-File454=marker-verde-66.png
-File455=marker-verde-67.png
-File456=marker-verde-68.png
-File457=marker-verde-69.png
-File458=marker-verde-7.png
-File459=marker-verde-70.png
-File46=marker-azul-105.png
-File460=marker-verde-71.png
-File461=marker-verde-72.png
-File462=marker-verde-73.png
-File463=marker-verde-74.png
-File464=marker-verde-75.png
-File465=marker-verde-76.png
-File466=marker-verde-77.png
-File467=marker-verde-78.png
-File468=marker-verde-79.png
-File469=marker-verde-8.png
-File47=marker-azul-106.png
-File470=marker-verde-80.png
-File471=marker-verde-81.png
-File472=marker-verde-82.png
-File473=marker-verde-83.png
-File474=marker-verde-84.png
-File475=marker-verde-85.png
-File476=marker-verde-86.png
-File477=marker-verde-87.png
-File478=marker-verde-88.png
-File479=marker-verde-89.png
-File48=marker-azul-107.png
-File480=marker-verde-9.png
-File481=marker-verde-90.png
-File482=marker-verde-91.png
-File483=marker-verde-92.png
-File484=marker-verde-93.png
-File485=marker-verde-94.png
-File486=marker-verde-95.png
-File487=marker-verde-96.png
-File488=marker-verde-97.png
-File489=marker-verde-98.png
-File49=marker-azul-108.png
-File490=marker-verde-99.png
-File491=nota.bal
-File492=noventa.bal
-File493=nuevocliente.bal
-File494=nuevocliente.jpg
-File495=nuevo-cliente20.png
-File496=Nvo Cliente.jpg
-File497=palomita_verde.png
-File498=PANEL_PICK_CIEGO.bal
-File499=pedido.bal
+File40=marker-azul-1.png
+File400=marker-verde-16.png
+File401=marker-verde-17.png
+File402=marker-verde-18.png
+File403=marker-verde-19.png
+File404=marker-verde-2.png
+File405=marker-verde-20.png
+File406=marker-verde-21.png
+File407=marker-verde-22.png
+File408=marker-verde-23.png
+File409=marker-verde-24.png
+File41=marker-azul-10.png
+File410=marker-verde-25.png
+File411=marker-verde-26.png
+File412=marker-verde-27.png
+File413=marker-verde-28.png
+File414=marker-verde-29.png
+File415=marker-verde-3.png
+File416=marker-verde-30.png
+File417=marker-verde-31.png
+File418=marker-verde-32.png
+File419=marker-verde-33.png
+File42=marker-azul-100.png
+File420=marker-verde-34.png
+File421=marker-verde-35.png
+File422=marker-verde-36.png
+File423=marker-verde-37.png
+File424=marker-verde-38.png
+File425=marker-verde-39.png
+File426=marker-verde-4.png
+File427=marker-verde-40.png
+File428=marker-verde-41.png
+File429=marker-verde-42.png
+File43=marker-azul-101.png
+File430=marker-verde-43.png
+File431=marker-verde-44.png
+File432=marker-verde-45.png
+File433=marker-verde-46.png
+File434=marker-verde-47.png
+File435=marker-verde-48.png
+File436=marker-verde-49.png
+File437=marker-verde-5.png
+File438=marker-verde-50.png
+File439=marker-verde-51.png
+File44=marker-azul-102.png
+File440=marker-verde-52.png
+File441=marker-verde-53.png
+File442=marker-verde-54.png
+File443=marker-verde-55.png
+File444=marker-verde-56.png
+File445=marker-verde-57.png
+File446=marker-verde-58.png
+File447=marker-verde-59.png
+File448=marker-verde-6.png
+File449=marker-verde-60.png
+File45=marker-azul-103.png
+File450=marker-verde-61.png
+File451=marker-verde-62.png
+File452=marker-verde-63.png
+File453=marker-verde-64.png
+File454=marker-verde-65.png
+File455=marker-verde-66.png
+File456=marker-verde-67.png
+File457=marker-verde-68.png
+File458=marker-verde-69.png
+File459=marker-verde-7.png
+File46=marker-azul-104.png
+File460=marker-verde-70.png
+File461=marker-verde-71.png
+File462=marker-verde-72.png
+File463=marker-verde-73.png
+File464=marker-verde-74.png
+File465=marker-verde-75.png
+File466=marker-verde-76.png
+File467=marker-verde-77.png
+File468=marker-verde-78.png
+File469=marker-verde-79.png
+File47=marker-azul-105.png
+File470=marker-verde-8.png
+File471=marker-verde-80.png
+File472=marker-verde-81.png
+File473=marker-verde-82.png
+File474=marker-verde-83.png
+File475=marker-verde-84.png
+File476=marker-verde-85.png
+File477=marker-verde-86.png
+File478=marker-verde-87.png
+File479=marker-verde-88.png
+File48=marker-azul-106.png
+File480=marker-verde-89.png
+File481=marker-verde-9.png
+File482=marker-verde-90.png
+File483=marker-verde-91.png
+File484=marker-verde-92.png
+File485=marker-verde-93.png
+File486=marker-verde-94.png
+File487=marker-verde-95.png
+File488=marker-verde-96.png
+File489=marker-verde-97.png
+File49=marker-azul-107.png
+File490=marker-verde-98.png
+File491=marker-verde-99.png
+File492=nota.bal
+File493=noventa.bal
+File494=nuevocliente.bal
+File495=nuevocliente.jpg
+File496=nuevo-cliente20.png
+File497=Nvo Cliente.jpg
+File498=palomita_verde.png
+File499=PANEL_PICK_CIEGO.bal
File5=bus-ar.png
-File50=marker-azul-109.png
-File500=planfia_logo.png
-File501=principal.bal
-File502=proditem.bal
-File503=proditem1.bal
-File504=proditem2.bal
-File505=proditempromo.bal
-File506=productos.bal
-File507=promociones.bal
-File508=resdia.bal
-File509=ResDia.jpg
-File51=marker-azul-11.png
-File510=resdia20.png
-File511=resumendia.jpg
-File512=salma.jpg
-File513=salma.png
-File514=scrollpromos.bal
-File515=senial.jpg
-File516=sync.png
-File517=tache_rojo.png
-File518=Ticket dia.jpg
-File519=ticketdia20.jpg
-File52=marker-azul-110.png
-File520=ticketdia20.png
-File521=ticketsdia.bal
-File522=Tiendita.jpg
-File523=verde.png
-File53=marker-azul-111.png
-File54=marker-azul-112.png
-File55=marker-azul-113.png
-File56=marker-azul-114.png
-File57=marker-azul-115.png
-File58=marker-azul-116.png
-File59=marker-azul-117.png
-File6=carrito.png
-File60=marker-azul-118.png
-File61=marker-azul-119.png
-File62=marker-azul-12.png
-File63=marker-azul-120.png
-File64=marker-azul-121.png
-File65=marker-azul-122.png
-File66=marker-azul-123.png
-File67=marker-azul-124.png
-File68=marker-azul-125.png
-File69=marker-azul-126.png
-File7=celltitle.bal
-File70=marker-azul-127.png
-File71=marker-azul-128.png
-File72=marker-azul-129.png
-File73=marker-azul-13.png
-File74=marker-azul-130.png
-File75=marker-azul-131.png
-File76=marker-azul-132.png
-File77=marker-azul-133.png
-File78=marker-azul-134.png
-File79=marker-azul-135.png
-File8=cliente.bal
-File80=marker-azul-136.png
-File81=marker-azul-137.png
-File82=marker-azul-138.png
-File83=marker-azul-139.png
-File84=marker-azul-14.png
-File85=marker-azul-140.png
-File86=marker-azul-141.png
-File87=marker-azul-142.png
-File88=marker-azul-143.png
-File89=marker-azul-144.png
-File9=clientes.bal
-File90=marker-azul-145.png
-File91=marker-azul-146.png
-File92=marker-azul-147.png
-File93=marker-azul-148.png
-File94=marker-azul-149.png
-File95=marker-azul-15.png
-File96=marker-azul-150.png
-File97=marker-azul-16.png
-File98=marker-azul-17.png
-File99=marker-azul-18.png
+File50=marker-azul-108.png
+File500=pedido.bal
+File501=planfia_logo.png
+File502=principal.bal
+File503=proditem.bal
+File504=proditem1.bal
+File505=proditem2.bal
+File506=proditempromo.bal
+File507=productos.bal
+File508=promociones.bal
+File509=resdia.bal
+File51=marker-azul-109.png
+File510=ResDia.jpg
+File511=resdia20.png
+File512=resumendia.jpg
+File513=salma.jpg
+File514=salma.png
+File515=scrollpromos.bal
+File516=senial.jpg
+File517=sync.png
+File518=tache_rojo.png
+File519=Ticket dia.jpg
+File52=marker-azul-11.png
+File520=ticketdia20.jpg
+File521=ticketdia20.png
+File522=ticketsdia.bal
+File523=Tiendita.jpg
+File524=verde.png
+File53=marker-azul-110.png
+File54=marker-azul-111.png
+File55=marker-azul-112.png
+File56=marker-azul-113.png
+File57=marker-azul-114.png
+File58=marker-azul-115.png
+File59=marker-azul-116.png
+File6=camara.bal
+File60=marker-azul-117.png
+File61=marker-azul-118.png
+File62=marker-azul-119.png
+File63=marker-azul-12.png
+File64=marker-azul-120.png
+File65=marker-azul-121.png
+File66=marker-azul-122.png
+File67=marker-azul-123.png
+File68=marker-azul-124.png
+File69=marker-azul-125.png
+File7=carrito.png
+File70=marker-azul-126.png
+File71=marker-azul-127.png
+File72=marker-azul-128.png
+File73=marker-azul-129.png
+File74=marker-azul-13.png
+File75=marker-azul-130.png
+File76=marker-azul-131.png
+File77=marker-azul-132.png
+File78=marker-azul-133.png
+File79=marker-azul-134.png
+File8=celltitle.bal
+File80=marker-azul-135.png
+File81=marker-azul-136.png
+File82=marker-azul-137.png
+File83=marker-azul-138.png
+File84=marker-azul-139.png
+File85=marker-azul-14.png
+File86=marker-azul-140.png
+File87=marker-azul-141.png
+File88=marker-azul-142.png
+File89=marker-azul-143.png
+File9=cliente.bal
+File90=marker-azul-144.png
+File91=marker-azul-145.png
+File92=marker-azul-146.png
+File93=marker-azul-147.png
+File94=marker-azul-148.png
+File95=marker-azul-149.png
+File96=marker-azul-15.png
+File97=marker-azul-150.png
+File98=marker-azul-16.png
+File99=marker-azul-17.png
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup100=Default Group
@@ -994,6 +995,7 @@ FileGroup520=Default Group
FileGroup521=Default Group
FileGroup522=Default Group
FileGroup523=Default Group
+FileGroup524=Default Group
FileGroup53=Default Group
FileGroup54=Default Group
FileGroup55=Default Group
@@ -1080,45 +1082,46 @@ Library8=compressstrings
Library9=contentresolver
ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~AddApplicationText(~\n~)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~AddApplicationText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~' CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~' CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'//////////////////////////////////////////////////////~\n~~\n~'/////////////////////// App Updating ////////////////~\n~AddManifestText(~\n~ )~\n~AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)~\n~CreateResourceFromFile(Macro, JhsIceZxing1.CaturePortrait)~\n~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~AddManifestText(~\n~ )~\n~AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~)~\n~CreateResource(xml, provider_paths,~\n~~\n~ ~\n~ ~\n~ ~\n~~\n~)~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~AddManifestText()~\n~AddApplicationText(~\n~~\n~ ~\n~ )~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~AddManifestText()
Module1=appUpdater
-Module10=C_NoVenta
-Module11=C_NuevoCliente
-Module12=C_Pedidos
-Module13=C_Principal
-Module14=C_Productos
-Module15=C_Promos
-Module16=C_RespaldoDiario
-Module17=C_Subs
-Module18=C_TicketsDia
-Module19=C_UpdateAvailable
+Module10=C_Nota
+Module11=C_NoVenta
+Module12=C_NuevoCliente
+Module13=C_Pedidos
+Module14=C_Principal
+Module15=C_Productos
+Module16=C_Promos
+Module17=C_RespaldoDiario
+Module18=C_Subs
+Module19=C_TicketsDia
Module2=B4XMainPage
-Module20=CameraExClass
-Module21=cPDF
-Module22=DBRequestManager
-Module23=EscPosPrinter
-Module24=FileHandler
-Module25=ManageExternalStorage
-Module26=MAPA_RUTAS
-Module27=NotificationService
-Module28=Pendientes
-Module29=Starter
+Module20=C_UpdateAvailable
+Module21=CameraExClass
+Module22=cPDF
+Module23=DBRequestManager
+Module24=EscPosPrinter
+Module25=FileHandler
+Module26=ManageExternalStorage
+Module27=MAPA_RUTAS
+Module28=NotificationService
+Module29=Pendientes
Module3=BatteryUtilities
-Module30=Subs
-Module31=Tracker
-Module4=C_Cliente
-Module5=C_Clientes
-Module6=C_Cuestionario
-Module7=C_Historico
-Module8=C_Mapas
-Module9=C_Nota
-NumberOfFiles=523
+Module30=Starter
+Module31=Subs
+Module32=Tracker
+Module4=C_Camara
+Module5=C_Cliente
+Module6=C_Clientes
+Module7=C_Cuestionario
+Module8=C_Historico
+Module9=C_Mapas
+NumberOfFiles=524
NumberOfLibraries=32
-NumberOfModules=31
+NumberOfModules=32
Version=12.8
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: ADM
#VersionCode: 1
- #VersionName: 5.08.22
+ #VersionName: 5.08.26
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False
diff --git a/B4A/ADM.b4a.meta b/B4A/ADM.b4a.meta
index 262e9c9..3c79ae6 100644
--- a/B4A/ADM.b4a.meta
+++ b/B4A/ADM.b4a.meta
@@ -24,6 +24,7 @@ ModuleBookmarks29=
ModuleBookmarks3=
ModuleBookmarks30=
ModuleBookmarks31=
+ModuleBookmarks32=
ModuleBookmarks4=
ModuleBookmarks5=
ModuleBookmarks6=
@@ -56,6 +57,7 @@ ModuleBreakpoints29=
ModuleBreakpoints3=
ModuleBreakpoints30=
ModuleBreakpoints31=
+ModuleBreakpoints32=
ModuleBreakpoints4=
ModuleBreakpoints5=
ModuleBreakpoints6=
@@ -81,19 +83,20 @@ ModuleClosedNodes22=
ModuleClosedNodes23=
ModuleClosedNodes24=
ModuleClosedNodes25=
-ModuleClosedNodes26=4
-ModuleClosedNodes27=
+ModuleClosedNodes26=
+ModuleClosedNodes27=4,6,8,9,10,11,12,13,14,15,16,17,18,20,21,22,24,25,26,27,28
ModuleClosedNodes28=
ModuleClosedNodes29=
ModuleClosedNodes3=
ModuleClosedNodes30=
-ModuleClosedNodes31=15,16,17,18,19
-ModuleClosedNodes4=4
-ModuleClosedNodes5=3,5,6,7
-ModuleClosedNodes6=
+ModuleClosedNodes31=
+ModuleClosedNodes32=15,16,17,18,19
+ModuleClosedNodes4=
+ModuleClosedNodes5=
+ModuleClosedNodes6=4,6,7,8,9,10,11,12,13,15,18,19,21,22
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
-NavigationStack=MAPA_RUTAS,b_cancelaNoVenta_Click,513,0,MAPA_RUTAS,p_inicioFinVenta_Click,513,0,MAPA_RUTAS,b_guardaNoVenta_Click,506,0,Diseñador Visual,mapa_rutas.bal,-100,6,MAPA_RUTAS,B_ROJO_Click,387,0,MAPA_RUTAS,B_AZUL_Click,396,0,MAPA_RUTAS,b_inicioVenta_Click,411,6,MAPA_RUTAS,b_finVenta_Click,417,0,MAPA_RUTAS,p_transparenciaIniciaInicioFinVenta_Click,426,0,MAPA_RUTAS,Activity_KeyPress,446,0,B4XMainPage,B4XPage_Created,218,0
+NavigationStack=C_Clientes,StopCamera,874,0,C_Clientes,mandaPendientes,875,6,Subs,traeCliente,740,0,Subs,traeMaxPromos,1151,0,C_Clientes,b_guardaNoVenta_Click,699,0,Subs,bitacora,1586,0,Diseñador Visual,clientes.bal,-100,1,C_Principal,JobDone,1203,0,Diseñador Visual,principal.bal,-100,3,C_Principal,B4XPage_Appear,380,0,C_Principal,getTableColumnList,361,0
SelectedBuild=0
-VisibleModules=29,2,13,4,5,10,30,26,31
+VisibleModules=30,2,14,5,6,11,31,27,32,7
diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas
index 681fb1d..bee4c4c 100644
--- a/B4A/B4XMainPage.bas
+++ b/B4A/B4XMainPage.bas
@@ -221,7 +221,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PICK_CIEGO (PC_ID_PROD TEXT, PC_NOM_PROD TEXT, PC_CANT TEXT, PC_ALMACEN TEXT, PC_RUTA TEXT, PC_FECHA TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENV_MONTO_LIQ (EML_MONTO TEXT, EML_ALMACEN TEXT, EML_RUTA TEXT, EML_USUARIO TEXT, EML_FECHA_PED TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(id TEXT, fechab TEXT, usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT, otro TEXT, enviado TEXT DEFAULT 0)")
- skmt.ExecNonQuery("CREATE TABLE If Not EXISTS PESOS(PE_TIPO TEXT, PE_IDALMACEN TEXT, PE_RUTA TEXT, PE_USUARIO TEXT, PE_CLIENTE TEXT, PE_PESO TEXT, PE_MOTIVO TEXT, PE_COMENTARIO TEXT, PE_FECHA TEXT, PE_FECHA_SINC TEXT)")
+ skmt.ExecNonQuery("CREATE TABLE If Not EXISTS PESOS(PE_TIPO TEXT, PE_IDALMACEN TEXT, PE_RUTA TEXT, PE_USUARIO TEXT, PE_CLIENTE TEXT, PE_PESO TEXT, PE_MOTIVO TEXT, PE_COMENTARIO TEXT, PE_FECHA TEXT, PE_FECHA_SINC TEXT, PE_FOTO_CERRADO TEXT, PE_ENVIO_OK TEXT DEFAULT 0)")
skmt.ExecNonQuery("CREATE TABLE If Not EXISTS HIST_UBICACIONES (HU_ID EXT, HU_IDALMACEN TEXT, HU_RUTA TEXT, HU_USUARIO TEXT, HU_LATITUD TEXT, HU_LONGITUD TEXT, HU_FECHA TEXT, HU_ENVIADO TEXT DEFAULT 0)")
skmt.ExecNonQuery("CREATE TABLE If Not EXISTS kmt_info (CAT_CL_FOTO BLOB, CAT_CL_NUM_SERIEFISICO TEXT, CAT_CL_MTOCOMPRA TEXT, CAT_CL_CEDIS TEXT, CAT_CL_LAT TEXT, CAT_CL_LONG TEXT, CAT_CL_FBAJA TEXT, CAT_CL_FALTA TEXT, CAT_CL_CP TEXT, CAT_CL_EDO TEXT, CAT_CL_MUNI TEXT, CAT_CL_COLONIA TEXT, CAT_CL_CALLE2 TEXT, CAT_CL_CALLE1 TEXT, CAT_CL_NOINT TEXT, CAT_CL_NOEXT TEXT, CAT_CL_CALLE TEXT, CAT_CL_EMAIL TEXT, CAT_CL_TELEFONO TEXT, CAT_CL_ATIENTE2 TEXT, CAT_CL_ATIENDE1 TEXT, CAT_CL_NOMBRE TEXT, CAT_CL_GIRO TEXT, CAT_CL_DIAS_VISITA TEXT, CAT_CL_TIPO_RUTA TEXT, CAT_CL_RUTA TEXT, CAT_CL_CODIGO TEXT, gestion NUMERIC, CAT_CL_BCREDITO TEXT, CAT_CL_LIMITECREDITO TEXT)")
diff --git a/B4A/C_Camara.bas b/B4A/C_Camara.bas
new file mode 100644
index 0000000..83c5700
--- /dev/null
+++ b/B4A/C_Camara.bas
@@ -0,0 +1,189 @@
+B4A=true
+Group=Default Group
+ModulesStructureVersion=1
+Type=Class
+Version=12.8
+@EndOfDesignText@
+Sub Class_Globals
+ Private Root As B4XView 'ignore
+ Private xui As XUI 'ignore
+ Private camEx As CameraExClass
+ Private frontCamera As Boolean = False
+ Dim p_camara0 As Panel
+ Dim p_camara As Panel
+ Private p_cam As Panel
+ Private b_foto_inci As Button
+ Private b_cam As Button
+ Dim fototomada As String = "0"
+ Dim sDate As String
+ Dim sTime As String
+End Sub
+
+'You can add more parameters here.
+Public Sub Initialize As Object
+ Return Me
+End Sub
+
+'This event will be called once, before the page becomes visible.
+Private Sub B4XPage_Created (Root1 As B4XView)
+ Root = Root1
+ 'load the layout to Root
+ Root.LoadLayout("camara")
+End Sub
+
+'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
+
+Sub InitializeCamera
+ Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
+ Wait For B4XPage_PermissionResult (Permission As String, resulta As Boolean)
+ If resulta Then
+ camEx.Initialize(p_cam, frontCamera, Me, "Camera1")
+ frontCamera = camEx.Front
+' p_camara0.Initialize("p_camara0")
+' p_camara0.LoadLayout("camara")
+ Else
+ ToastMessageShow("!!!Sin permisos de camara!!!", True)
+ End If
+End Sub
+
+Sub camaraVisible
+ Log("CAMARA")
+ p_camara.Top = 0
+ p_camara.Left = 0
+ p_camara.Visible = True
+ p_camara.BringToFront
+End Sub
+
+Sub Camera1_Ready (Success As Boolean)
+ If Success Then
+ camEx.SetJpegQuality(90)
+ camEx.SetContinuousAutoFocus
+ camEx.CommitParameters
+ camEx.StartPreview
+ Log(camEx.GetPreviewSize)
+ Else
+ ToastMessageShow("Cannot open camera.", True)
+ End If
+End Sub
+
+Sub Camera1_PictureTaken (Data() As Byte)
+ If b_foto_inci.Text = "Foto tienda" Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ fototomada = DateTime.Now & "_cliente.jpg"
+ Dim filename As String = fototomada
+ Dim dir As String = File.DirInternal
+ camEx.SavePictureToFile(Data, dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename), True)
+ Dim Dirp As String = File.DirInternal
+ Dim dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/adm")
+ dir = "/adm"
+ Log("creado en promotoria " & Dirp & dir)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ Try
+ File.MakeDir(Dirp & dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & dir & Dir2)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ DateTime.DateFormat = "MM/dd/yyyy"
+ DateTime.TimeFormat = "HH:mm:ss"
+ sDate = DateTime.Date(DateTime.Now)
+ sTime = DateTime.Time(DateTime.Now)
+ camEx.SavePictureToFile(Data, Dirp&dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename)
+
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirInternal & dir, filename, 450, 600, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+
+ Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD))
+ b_foto_inci.Text = "Foto usuario"
+ ChangeCamera_Click
+ Else If b_foto_inci.Text = "Foto usuario" Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ fototomada = DateTime.Now & "_cliente.jpg"
+ Dim filename As String = fototomada
+ Dim dir As String = File.DirInternal
+ camEx.SavePictureToFile(Data, dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename), True)
+ Dim Dirp As String = File.DirInternal
+ Dim dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/adm")
+ dir = "/adm"
+ Log("creado en promotoria " & Dirp & dir)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ Try
+ File.MakeDir(Dirp & dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & dir & Dir2)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ DateTime.DateFormat = "MM/dd/yyyy"
+ DateTime.TimeFormat = "HH:mm:ss"
+ sDate = DateTime.Date(DateTime.Now)
+ sTime = DateTime.Time(DateTime.Now)
+ camEx.SavePictureToFile(Data, Dirp&dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename)
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirInternal & dir, filename, 450, 600, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,Subs.traeruta, Subs.traeAlmacen ))
+ b_foto_inci.Text = "Foto tienda"
+ ChangeCamera_Click
+ p_camara.Visible = False
+ StopCamera
+ If Subs.traeCliente = "0" Then
+ B4XPages.MainPage.tipo_venta = "ABORDO"
+ Else If Subs.traeCliente = "1" Then
+ B4XPages.MainPage.tipo_venta = "RECARGA"
+ Else
+ B4XPages.MainPage.tipo_venta = "PREVENTA"
+ End If
+' B4XPages.ShowPage("productos")
+' p_transparentePidePeso.Visible = True
+ End If
+End Sub
+
+Sub ChangeCamera_Click
+ camEx.Release
+ frontCamera = Not(frontCamera)
+ InitializeCamera
+End Sub
+
+Private Sub StopCamera
+' Capturing = False
+ If camEx.IsInitialized Then
+ camEx.Release
+ End If
+End Sub
+
+Private Sub b_foto_inci_Click
+
+End Sub
+
+Private Sub p_camara_Click
+
+End Sub
\ No newline at end of file
diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas
index 16f59e7..8a5c115 100644
--- a/B4A/C_Cliente.bas
+++ b/B4A/C_Cliente.bas
@@ -86,7 +86,7 @@ Sub Class_Globals
Private META2 As String
Private VERIFICA As String
Private L_QR As Label
- dim BT_QR As Button
+ Dim BT_QR As Button
'Private qr As QRCode
Dim CODIGO As String
@@ -280,8 +280,6 @@ Sub B4XPage_Appear
Tels.Visible = False
gest.Visible = False
b_ventaabordo.Visible = False
- p_camara.Height = Root.Height
- p_camara.Width = Root.Width
p_tipopago.Height = Root.Height
p_tipopago.Width = Root.Width
banderaimp = 0
@@ -480,7 +478,7 @@ Sub B4XPage_Appear
camEx.Release
End If
InitializeCamera
- if venimosDeTicketsDia then Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, ALMACEN, Subs.traeRuta, "Cliente desde TicketsDia", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, "2", "", "", $"Cliente:${la_cuenta.text}"$)
+ If venimosDeTicketsDia Then Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, ALMACEN, Subs.traeRuta, "Cliente desde TicketsDia", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, "2", "", "", $"Cliente:${la_cuenta.text}"$)
End Sub
Sub GPS_LocationChanged (Location1 As Location)
@@ -2783,7 +2781,6 @@ Sub Camera1_Ready (Success As Boolean)
End If
End Sub
-
Sub Camera1_PictureTaken (Data() As Byte)
If b_foto_inci.Text = "Foto tienda" Then
DateTime.DateFormat="ddMMyyyyHHmmss"
@@ -2798,7 +2795,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim Dir2 As String
Try
File.MakeDir(Dirp,"/adm")
- dir = "/amd"
+ dir = "/adm"
Log("creado en promotoria " & Dirp & dir)
Catch
dir = ""
@@ -2842,7 +2839,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim Dir2 As String
Try
File.MakeDir(Dirp,"/adm")
- dir = "/amd"
+ dir = "/adm"
Log("creado en promotoria " & Dirp & dir)
Catch
dir = ""
@@ -2885,7 +2882,6 @@ Sub Camera1_PictureTaken (Data() As Byte)
End If
End Sub
-
Sub ChangeCamera_Click
camEx.Release
frontCamera = Not(frontCamera)
@@ -2899,7 +2895,6 @@ Private Sub StopCamera
End If
End Sub
-
Private Sub p_camara_Click
End Sub
diff --git a/B4A/C_Clientes.bas b/B4A/C_Clientes.bas
index 2f48920..5635a14 100644
--- a/B4A/C_Clientes.bas
+++ b/B4A/C_Clientes.bas
@@ -23,7 +23,7 @@ Sub Class_Globals
Private qr As QRCode
' Dim sc As Zxing_scanner
Dim CODIGO As String
- Dim STIME As String
+ Dim sTime As String
Dim ruta As String
Dim q_buscar As String
@@ -53,11 +53,26 @@ Sub Class_Globals
Private b_guardaNoVenta As Button
Private p_botonesNoVenta As Panel
Private et_comentarioNoVenta As EditText
+ Private r_opcion5 As RadioButton
Private r_opcion4 As RadioButton
Private r_opcion3 As RadioButton
Private r_opcion2 As RadioButton
Private r_opcion1 As RadioButton
Dim motivo As String
+ Private p_camara As Panel
+ Private b_foto_inci As Button
+ Private b_cam As Button
+ Private p_cam As Panel
+ Private camEx As CameraExClass
+ Private frontCamera As Boolean = False
+ Dim laCam As C_Camara
+ Dim fototomada As String = "0"
+ Dim sDate As String
+ Dim sTime As String
+ Private nombreFoto As String
+ Dim fotoCerrado As String = ""
+ Private p_botonesCam As Panel
+ Dim reqManager As DBRequestManager
End Sub
'You can add more parameters here.
@@ -93,6 +108,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
End If
qr.initialize
+ reqManager.Initialize(Me, Starter.DBReqServer)
+ laCam.Initialize
End Sub
Sub B4XPage_Appear
@@ -182,52 +199,52 @@ Sub CreateListItem(nombre As String, direccion0 As String, cliente As String) As
End Sub
Sub ListView1_ItemClick (Position As Int, value As Object)
- If colonia = 0 Then
- colonia = value
- End If
- If entro = "2" Then
- c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_CALLE, CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 and CAT_CL_COLONIA = ? GROUP BY CAT_CL_CALLE, CAT_CL_COLONIA order by CAT_CL_CALLE ", Array As String(value))
- ListView1.Clear
- lfila.text = "Calle"
- If c2.RowCount>0 Then
- For i=0 To c2.RowCount -1
- c2.Position=i
- ListView1.AddTwoLines(c2.GetString("CAT_CL_CALLE"),c2.GetString("cuantos") )
- Next
- End If
- entro = "3"
- Else If entro = "3" Then
- c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 and CAT_CL_CALLE = ? AND CAT_CL_COLONIA = ? order by CAT_CL_NOMBRE ", Array As String(value, colonia))
- ListView1.Clear
- lfila.text = "Nombre"
- If c2.RowCount>0 Then
- For i=0 To c2.RowCount -1
- c2.Position=i
- ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE"))
- Next
- End If
- entro = "4"
- Else If entro = "4" Then
- B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
- B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(value))
- DateTime.TimeFormat = "HHmmss"
- STIME=DateTime.Time(DateTime.Now)
- Starter.pre_viejo = Subs.traeTotalClientepreventaparacredito
- s=B4XPages.MainPage.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_STAY_STORE WHERE HSS_IN = ? AND HSS_CODIGO In (select cuenta from cuentaa)", Array As String("0"))
- s.Position = 0
- If s.GetString("CUANTOS") = 1 Then
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(STIME))
- Else
- B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (value))
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(STIME))
- End If
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_INI = ? where HSO_INI = 0 ", Array As Object(STIME))
- DateTime.TimeFormat = "HH:mm:ss"
-
- Subs.guardaClienteHoraInicio(value)
-
- B4XPages.ShowPage("Cliente")
- End If
+' If colonia = 0 Then
+' colonia = value
+' End If
+' If entro = "2" Then
+' c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_CALLE, CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 and CAT_CL_COLONIA = ? GROUP BY CAT_CL_CALLE, CAT_CL_COLONIA order by CAT_CL_CALLE ", Array As String(value))
+' ListView1.Clear
+' lfila.text = "Calle"
+' If c2.RowCount>0 Then
+' For i=0 To c2.RowCount -1
+' c2.Position=i
+' ListView1.AddTwoLines(c2.GetString("CAT_CL_CALLE"),c2.GetString("cuantos") )
+' Next
+' End If
+' entro = "3"
+' Else If entro = "3" Then
+' c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 and CAT_CL_CALLE = ? AND CAT_CL_COLONIA = ? order by CAT_CL_NOMBRE ", Array As String(value, colonia))
+' ListView1.Clear
+' lfila.text = "Nombre"
+' If c2.RowCount>0 Then
+' For i=0 To c2.RowCount -1
+' c2.Position=i
+' ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE"))
+' Next
+' End If
+' entro = "4"
+' Else If entro = "4" Then
+' B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
+' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(value))
+' DateTime.TimeFormat = "HHmmss"
+' sTime=DateTime.Time(DateTime.Now)
+' Starter.pre_viejo = Subs.traeTotalClientepreventaparacredito
+' s=B4XPages.MainPage.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_STAY_STORE WHERE HSS_IN = ? AND HSS_CODIGO In (select cuenta from cuentaa)", Array As String("0"))
+' s.Position = 0
+' If s.GetString("CUANTOS") = 1 Then
+' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
+' Else
+' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (value))
+' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
+' End If
+' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_INI = ? where HSO_INI = 0 ", Array As Object(sTime))
+' DateTime.TimeFormat = "HH:mm:ss"
+'
+' Subs.guardaClienteHoraInicio(value)
+'
+' B4XPages.ShowPage("Cliente")
+' End If
End Sub
Private Sub B4XPage_CloseRequest As ResumableSub
@@ -398,55 +415,53 @@ Private Sub p_clientes_Click
End Sub
Private Sub p_datosclie_Click
- If colonia = 0 Then
- colonia = Sender.As(Panel).tag
- End If
- If entro = "2" Then
- c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_CALLE, CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 and CAT_CL_COLONIA = ? GROUP BY CAT_CL_CALLE, CAT_CL_COLONIA order by CAT_CL_CALLE ", Array As String(Sender.As(Panel).tag))
- ListView1.Clear
- lfila.text = "Calle"
- If c2.RowCount>0 Then
- For i=0 To c2.RowCount -1
- c2.Position=i
- ListView1.AddTwoLines(c2.GetString("CAT_CL_CALLE"),c2.GetString("cuantos") )
- Next
- End If
- entro = "3"
- Else If entro = "3" Then
- c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 and CAT_CL_CALLE = ? AND CAT_CL_COLONIA = ? order by CAT_CL_NOMBRE ", Array As String(Sender.As(Panel).tag, colonia))
- ListView1.Clear
- lfila.text = "Nombre"
- If c2.RowCount>0 Then
- For i=0 To c2.RowCount -1
- c2.Position=i
- ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE"))
- Next
- End If
- entro = "4"
- Else If entro = "4" Then
- B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
- B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Sender.As(Panel).tag))
- DateTime.TimeFormat = "HHmmss"
- STIME=DateTime.Time(DateTime.Now)
-
- s=B4XPages.MainPage.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_STAY_STORE WHERE HSS_IN = ? AND HSS_CODIGO In (select cuenta from cuentaa)", Array As String("0"))
- s.Position = 0
- If s.GetString("CUANTOS") = 1 Then
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(STIME))
- Else
- B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (Sender.As(Panel).tag))
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(STIME))
- End If
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_INI = ? where HSO_INI = 0 ", Array As Object(STIME))
- DateTime.TimeFormat = "HH:mm:ss"
-
- Subs.guardaClienteHoraInicio(Sender.As(Panel).tag)
-
- B4XPages.ShowPage("Cliente")
- End If
-
-
-' Log(Sender.As(Panel).tag)
+' If colonia = 0 Then
+' colonia = Sender.As(Panel).tag
+' End If
+' If entro = "2" Then
+' c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_CALLE, CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 and CAT_CL_COLONIA = ? GROUP BY CAT_CL_CALLE, CAT_CL_COLONIA order by CAT_CL_CALLE ", Array As String(Sender.As(Panel).tag))
+' ListView1.Clear
+' lfila.text = "Calle"
+' If c2.RowCount>0 Then
+' For i=0 To c2.RowCount -1
+' c2.Position=i
+' ListView1.AddTwoLines(c2.GetString("CAT_CL_CALLE"),c2.GetString("cuantos") )
+' Next
+' End If
+' entro = "3"
+' Else If entro = "3" Then
+' c2=B4XPages.MainPage.skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where gestion = 0 and CAT_CL_CALLE = ? AND CAT_CL_COLONIA = ? order by CAT_CL_NOMBRE ", Array As String(Sender.As(Panel).tag, colonia))
+' ListView1.Clear
+' lfila.text = "Nombre"
+' If c2.RowCount>0 Then
+' For i=0 To c2.RowCount -1
+' c2.Position=i
+' ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE"))
+' Next
+' End If
+' entro = "4"
+' Else If entro = "4" Then
+' B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
+' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Sender.As(Panel).tag))
+' DateTime.TimeFormat = "HHmmss"
+' sTime=DateTime.Time(DateTime.Now)
+'
+' s=B4XPages.MainPage.skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_STAY_STORE WHERE HSS_IN = ? AND HSS_CODIGO In (select cuenta from cuentaa)", Array As String("0"))
+' s.Position = 0
+' If s.GetString("CUANTOS") = 1 Then
+' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
+' Else
+' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (Sender.As(Panel).tag))
+' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_IN = ? where HSS_IN = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
+' End If
+' B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_INI = ? where HSO_INI = 0 ", Array As Object(sTime))
+' DateTime.TimeFormat = "HH:mm:ss"
+'
+' Subs.guardaClienteHoraInicio(Sender.As(Panel).tag)
+'
+' B4XPages.ShowPage("Cliente")
+' End If
+'' Log(Sender.As(Panel).tag)
End Sub
Private Sub b_buscar_Click
@@ -565,14 +580,32 @@ Private Sub b_inicioVenta_Click
Starter.skmt.ExecNonQuery($"delete from cuentaa"$)
Starter.skmt.ExecNonQuery($"insert into cuentaa (cuenta) values ('${cliente}')"$)
Log($"insert into cuentaa (cuenta) values ('${cliente}')"$)
- p_transparenciaIniciaInicioFinVenta.Visible = True
- b_finVenta.Enabled = True
- Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", cliente, Subs.fechanormal(DateTime.Now), "", Starter.lat_gps, Starter.lon_gps, "2", "", "", "")
- Starter.enVenta = True
- Subs.enVenta(1, "CLIENTES")
-
- LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${cliente}"$, Colors.red)
- Log(Subs.traeRuta2(Subs.traeCliente))
+ c = Starter.skmt.ExecQuery("SELECT * FROM FOTOINICIAL")
+ If c.RowCount = 0 Then
+ p_camara.Visible = True
+ InitializeCamera
+ p_camara.Left = 0
+ p_camara.Visible = True
+ nombreFoto = "inicio"
+ b_foto_inci.Text = "Foto tienda"
+ Else
+ p_transparenciaIniciaInicioFinVenta.Visible = True
+ b_finVenta.Enabled = True
+ Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", cliente, Subs.fechanormal(DateTime.Now), "", Starter.lat_gps, Starter.lon_gps, "2", "", "", "")
+ Starter.enVenta = True
+ Subs.enVenta(1, "CLIENTES")
+ LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${cliente}"$, Colors.red)
+ Log(Subs.traeRuta2(Subs.traeCliente))
+ End If
+ c = Starter.skmt.ExecQuery($"select PE_FOTO_CERRADO from PESOS where PE_CLIENTE = '${cliente}' and PE_FOTO_CERRADO = '1'"$)
+ If c.RowCount > 0 Then
+ fotoCerrado = "1"
+ Else
+ fotoCerrado = ""
+ End If
+ c.Close
+ Log("CLIENTE: " & cliente)
+ Log("FOTOCERRADO: " & fotoCerrado)
End Sub
Private Sub ventaIniciada
@@ -611,7 +644,7 @@ Private Sub b_guardarPeso_Click
Private peso As Double = et_guardarPeso.Text
et_guardarPeso.Text = peso
- Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "")
+ Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "")
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, "", "", $"Venta:${et_guardarPeso.text}"$)
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
Starter.enVenta = False
@@ -621,6 +654,7 @@ Private Sub b_guardarPeso_Click
' b_inicioVenta.Enabled = True
b_finVenta.Enabled = False
B4XPages.MainPage.clientes.B4XPage_Appear
+ mandaPendientes
End If
End Sub
@@ -647,22 +681,280 @@ Private Sub b_guardaNoVenta_Click
motivo = "NO COMPRA"
Else If r_opcion3.Checked Then
motivo = "CON PRODUCTO"
- Else
+ Else If r_opcion4.Checked Then
motivo = "NO ESTA EL ENCARGADO"
+ Else
+ motivo = "CANCELACION"
End If
- DateTime.DateFormat="yy-MM-dd HH:mm:ss"
- Dim fecha As String=DateTime.Date(DateTime.Now)
-
- Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text)
- Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
- Starter.enVenta = False
- Subs.enVenta(0, "")
- Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
- p_noVenta.Visible = False
- p_guardarPeso.Visible = False
- p_transparenciaIniciaInicioFinVenta.Visible = False
+
+ Log("FOTOCERRADO: " & fotoCerrado)
+
+ If motivo = "CERRADO" And fotoCerrado = "" Then
+ nombreFoto = Subs.traeCliente & "_cerrado"
+ p_camara.Height = Root.Height : p_camara.Width = Root.Width
+ p_camara.Left = 0 : p_camara.top = 0
+ Subs.centraPanel(p_cam, Root.Width)
+ Subs.centraPanel(p_botonesCam, Root.Width)
+ p_camara.Visible = True
+ InitializeCamera
+ p_camara.Visible = True
+ p_camara.BringToFront
+ b_foto_inci.Text = "Foto tienda"
+ Else
+ DateTime.DateFormat="yy-MM-dd HH:mm:ss"
+ Dim fecha As String=DateTime.Date(DateTime.Now)
+ Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado)
+ Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
+ Starter.enVenta = False
+ Subs.enVenta(0, "")
+ Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+ p_noVenta.Visible = False
+ p_guardarPeso.Visible = False
+ p_transparenciaIniciaInicioFinVenta.Visible = False
+ End If
+ mandaPendientes
+
+' DateTime.DateFormat="yy-MM-dd HH:mm:ss"
+' Dim fecha As String=DateTime.Date(DateTime.Now)
+'
+' Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text)
+' Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
+' Starter.enVenta = False
+' Subs.enVenta(0, "")
+' Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+' p_noVenta.Visible = False
+' p_guardarPeso.Visible = False
+' p_transparenciaIniciaInicioFinVenta.Visible = False
End Sub
Private Sub b_cancelaNoVenta_Click
p_noVenta.Visible = False
+End Sub
+
+Private Sub p_camara_Click
+
+End Sub
+
+Private Sub b_foto_inci_Click
+ camEx.TakePicture
+End Sub
+
+Private Sub InitializeCamera
+ Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
+ Wait For B4XPage_PermissionResult (Permission As String, resulta As Boolean)
+ If resulta Then
+ camEx.Initialize(p_cam, frontCamera, Me, "Camera1")
+ frontCamera = camEx.Front
+ Else
+ ToastMessageShow("No permission!!!", True)
+ End If
+End Sub
+
+Sub Camera1_Ready (Success As Boolean)
+ If Success Then
+ camEx.SetJpegQuality(90)
+ camEx.SetContinuousAutoFocus
+ camEx.CommitParameters
+ camEx.StartPreview
+ Log(camEx.GetPreviewSize)
+ Else
+ ToastMessageShow("Cannot open camera.", True)
+ End If
+End Sub
+
+Sub Camera1_PictureTaken (Data() As Byte)
+ If b_foto_inci.Text = "Foto tienda" Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
+ Dim filename As String = fototomada
+ Dim dir As String = File.DirInternal
+ camEx.SavePictureToFile(Data, dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename), True)
+ Dim Dirp As String = File.DirInternal
+ Dim dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/adm")
+ dir = "/adm"
+ Log("creado en promotoria " & Dirp & dir)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ Try
+ File.MakeDir(Dirp & dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & dir & Dir2)
+ Catch
+ Dir2 = ""
+ Log("creado en raiz")
+ End Try
+ DateTime.DateFormat = "MM/dd/yyyy"
+ DateTime.TimeFormat = "HH:mm:ss"
+ sDate = DateTime.Date(DateTime.Now)
+ sTime = DateTime.Time(DateTime.Now)
+ camEx.SavePictureToFile(Data, Dirp&dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename)
+
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirInternal & dir, filename, 450, 600, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ If nombreFoto = "inicio" Then
+ Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD))
+ b_foto_inci.Text = "Foto usuario"
+ ChangeCamera_Click
+ Else
+ fotoCerrado = fototomada
+ p_camara.Visible = False
+ StopCamera
+ End If
+ Else If b_foto_inci.Text = "Foto usuario" Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ fototomada = fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
+ Dim filename As String = fototomada
+ Dim dir As String = File.DirInternal
+ camEx.SavePictureToFile(Data, dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename), True)
+ Dim Dirp As String = File.DirInternal
+ Dim dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/adm")
+ dir = "/adm"
+ Log("creado en promotoria " & Dirp & dir)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ Try
+ File.MakeDir(Dirp & dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & dir & Dir2)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ DateTime.DateFormat = "MM/dd/yyyy"
+ DateTime.TimeFormat = "HH:mm:ss"
+ sDate = DateTime.Date(DateTime.Now)
+ sTime = DateTime.Time(DateTime.Now)
+ camEx.SavePictureToFile(Data, Dirp&dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename)
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirInternal & dir, filename, 450, 600, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen ))
+ b_foto_inci.Text = "Foto tienda"
+ ChangeCamera_Click
+ p_camara.Visible = False
+ StopCamera
+ If Subs.traeCliente = "0" Then
+ B4XPages.MainPage.tipo_venta = "ABORDO"
+ Else If Subs.traeCliente = "1" Then
+ B4XPages.MainPage.tipo_venta = "RECARGA"
+ Else
+ B4XPages.MainPage.tipo_venta = "PREVENTA"
+ End If
+' B4XPages.ShowPage("productos")
+' p_transparentePidePeso.Visible = True
+ End If
+End Sub
+
+Sub ChangeCamera_Click
+ camEx.Release
+ frontCamera = Not(frontCamera)
+ InitializeCamera
+End Sub
+
+Private Sub StopCamera
+' Capturing = False
+ If camEx.IsInitialized Then
+ camEx.Release
+ End If
+End Sub
+
+Sub mandaPendientes
+' PEDIDO_CLIENTE (Pendientes)
+ Log(">>>>>>> MANDA PENDIENTES")
+ Dim PCNoArts As String
+ Dim PCMonto As String
+ If Subs.traeUsuarioDeBD <> "KMTS1" Then
+ 'PESOS (Pendientes)
+ c = Starter.skmt.ExecQuery($"SELECT * FROM PESOS where PE_ENVIO_OK <> 1"$)
+ Log($"PESOS PENDIENTE: ${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_pedido2_ADM"
+' cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),c.GetString("PE_CEDIS"),c.GetString("PE_IDALMACEN"),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"),Subs.traeRuta2(c.GetString("PE_CLIENTE")), c.GetString("PE_COSTO_SIN"),c.GetString("PE_DESC"),c.GetString("PE_FOLIO"),c.GetString("PE_CANTC"),c.GetString("PE_BCAJAS"),c.GetString("PE_TIPOPAGO"),c.GetString("PE_COMENTARIO"))
+' reqManager.ExecuteCommand(cmd , $"ins_pedidosPendientes_prods_${c.GetString("PE_CLIENTE")}_${c.GetString("PE_PROID")}"$)
+' Log($">>>> INS_PEDIDO= ${C.GetString("PE_CEDIS")},${ALMACEN},${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_RUTA")}, ${C.GetString("PE_COSTO_SIN")}, ${C.GetString("PE_DESC")}, ${c.GetString("PE_FOLIO")}, ${PCNoArts}, ${PCMonto}"$)
+' sql.insert_pedido_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?))
+' sql.insert_pedido2_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO, PE_CANT_TOTAL, PE_VENTA_TOTAL) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?),(?),(?))
+
+ Dim cmd As DBCommand
+ cmd.Initialize
+ cmd.Name = "insertPesos"
+' Log(c.GetString("PE_IDALMACEN")&", "&ALMACEN&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN)
+ cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO"))
+' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$)
+ reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$)
+ Next
+ End If
+ c.Close
+ End If
+End Sub
+
+
+Sub JobDone(Job As HttpJob)
+ Log("INICA JOBDONE CLIENTES - " & Job.Tag)
+ If reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos.
+ If reqManager.reqsList.IndexOf(Job.tag) <> -1 Then
+ reqManager.reqsList.RemoveAt(reqManager.reqsList.IndexOf(Job.tag))
+ LogColor($">>>>>> Recibimos y quitamos ${Job.tag.As(String).ToUpperCase}"$, Colors.Blue)
+ End If
+ LogColor(">>>>>> " & reqManager.reqsList.Size & " - " & reqManager.reqsList, Colors.Blue)
+ End If
+ If Job.Success = False Then
+ LogColor("############################################", Colors.red)
+ LogColor("###### JobError: " & Job.Tag & CRLF & Job.ErrorMessage, Colors.red)
+ LogColor("############################################", Colors.red)
+' LogColor("Error2: " & Job.ErrorMessage, Colors.red)
+' LogColor("Error1: " & reqManager.HandleJob(Job).tag, Colors.red)
+' LogColor("Error: " & reqManager.HandleJob(Job).tag & " : " & Job.ErrorMessage, Colors.red)
+' Job.Release
+ Else 'If Job Success then ...
+ Try
+ LogColor(" >> JobSuccess: '" & reqManager.HandleJob(Job).tag & CRLF & " >> Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.RGB(0,160,0)) 'Mod por CHV - 211027
+ If Job.JobName = "DBRequest" Then
+ Dim RESULT As DBResult = reqManager.HandleJob(Job)
+ If RESULT.Tag.As(String).StartsWith("insertPesos_") Then
+ For Each records() As Object In RESULT.Rows
+ Private id() = Regex.Split("_", RESULT.tag)
+ If id.Length > 1 Then
+ For Each k As String In RESULT.Columns.Keys
+' Log(RESULT.Tag & ": " & k & ": " & records(RESULT.Columns.Get(k)))
+ Starter.skmt.ExecNonQuery($"update pesos set PE_ENVIO_OK = 1 where PE_CLIENTE = '${id(1)}'"$)
+' Log($"update bitacoragps set enviado = 1 where id = '${id(1)}'"$)
+ Next
+ End If
+ Next
+ End If
+ End If
+ Catch
+ Log(LastException)
+ End Try
+ End If
+ LogColor(">>>>> Job.Release Clientes - " & Job.Tag, Colors.RGB(179, 146, 0))
+ Job.Release
End Sub
\ No newline at end of file
diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas
index 7cebbc9..c85f86f 100644
--- a/B4A/C_Principal.bas
+++ b/B4A/C_Principal.bas
@@ -377,9 +377,9 @@ Sub B4XPage_Appear
rd.respaldaInventarios
rd.respaldaPaquetes
HORAINGRESO ="000000"
- Private inicioL As Float = (nvo_cliente.Left + nvo_cliente.Width)
- Private finR As Float = Panel9.Left
- Btn_Ubicar.Left = ((nvo_cliente.Left + nvo_cliente.Width)) - (Btn_Ubicar.Width / 2) + ((finR - inicioL)/2) + 15
+' Private inicioL As Float = (nvo_cliente.Left + nvo_cliente.Width)
+' Private finR As Float = Panel9.Left
+' Btn_Ubicar.Left = ((nvo_cliente.Left + nvo_cliente.Width)) - (Btn_Ubicar.Width / 2) + ((finR - inicioL)/2) + 15
reqManager.Initialize(Me, Starter.DBReqServer)
Log(Starter.DBReqServer)
PASO =0
@@ -799,8 +799,8 @@ Sub b_subir_Click
d.Close
' NOVENTA
- c=B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA")
- D=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
+ c=B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA")
+ D=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
If c.RowCount>0 Then
For i=0 To c.RowCount -1
c.Position=i
@@ -847,18 +847,18 @@ Sub b_subir_Click
c.Close
' LO DEL LIKE
- c=B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE")
- If c.RowCount>0 Then
- For i=0 To c.RowCount -1
- c.Position=i
- Dim cmd As DBCommand
- cmd.Initialize
- cmd.Name = "insert_face_like_ADM"
- cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN"))
- reqManager.ExecuteCommand(cmd , "inst_noventa")
- Next
- End If
- c.Close
+' c=B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE")
+' If c.RowCount>0 Then
+' For i=0 To c.RowCount -1
+' c.Position=i
+' Dim cmd As DBCommand
+' cmd.Initialize
+' cmd.Name = "insert_face_like_ADM"
+' cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN"))
+' reqManager.ExecuteCommand(cmd , "inst_noventa")
+' Next
+' End If
+' c.Close
' DROP
t1.Initialize("T1", 30000) ' 1000 = 1 second
@@ -913,7 +913,7 @@ Sub b_subir_Click
cmd.Initialize
cmd.Name = "insertPesos"
' Log(c.GetString("PE_IDALMACEN")&", "&ALMACEN&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN)
- cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"))
+ cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO"))
' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$)
reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$)
' cmd.Name = "insert_pedido_INTMEX" ' SIN TOTALES INCLUIDOS
@@ -926,7 +926,7 @@ Sub b_subir_Click
End Sub
Sub b_cargar_Click
- Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,ALMACEN,l_ruta.Text,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),Starter.lat_gps,Starter.lon_gps,"2","","","")
+ Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, ALMACEN, e_ruta.Text, "Carga día", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, "2", "", "", "")
Dim pedidodiaanterior As Boolean = False
Dim cp As Cursor = B4XPages.MainPage.skmt.ExecQuery("select * from PEDIDO")
If cp.RowCount > 0 Then
@@ -2189,6 +2189,7 @@ Sub e_ruta_EnterPressed
B4XPages.MainPage.skmt.ExecNonQuery("delete from PICKCIEGO_HECHO")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from PESOS")
B4XPages.MainPage.skmt.ExecNonQuery("delete from PAGARES")
B4XPages.MainPage.skmt.ExecNonQuery("delete from noventa")
B4XPages.MainPage.skmt.ExecNonQuery("delete from clie_act")
diff --git a/B4A/CameraExClass.bas b/B4A/CameraExClass.bas
index 96d0d82..2e156b4 100644
--- a/B4A/CameraExClass.bas
+++ b/B4A/CameraExClass.bas
@@ -182,6 +182,7 @@ Public Sub SetPreviewSize(Width As Int, Height As Int)
r.target = parameters
r.RunMethod3("setPreviewSize", Width, "java.lang.int", Height, "java.lang.int")
End Sub
+
Public Sub GetSupportedPicturesSizes As CameraSize()
r.target = parameters
Dim list1 As List = r.RunMethod("getSupportedPictureSizes")
diff --git a/B4A/Files/camara.bal b/B4A/Files/camara.bal
new file mode 100644
index 0000000..4f357f8
Binary files /dev/null and b/B4A/Files/camara.bal differ
diff --git a/B4A/Files/clientes.bal b/B4A/Files/clientes.bal
index 71ff7b2..edfc177 100644
Binary files a/B4A/Files/clientes.bal and b/B4A/Files/clientes.bal differ
diff --git a/B4A/Files/mapa_rutas.bal b/B4A/Files/mapa_rutas.bal
index d6cfaf3..8620936 100644
Binary files a/B4A/Files/mapa_rutas.bal and b/B4A/Files/mapa_rutas.bal differ
diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal
index 5232873..620aa7b 100644
Binary files a/B4A/Files/principal.bal and b/B4A/Files/principal.bal differ
diff --git a/B4A/MAPA_RUTAS.bas b/B4A/MAPA_RUTAS.bas
index 5ffa327..0c9d52c 100644
--- a/B4A/MAPA_RUTAS.bas
+++ b/B4A/MAPA_RUTAS.bas
@@ -19,6 +19,7 @@ Sub Process_Globals
Dim c2 As Cursor
Dim c22 As Cursor
Dim c3 As Cursor
+ Private xui As XUI 'ignore
End Sub
Sub Globals
@@ -72,6 +73,7 @@ Sub Globals
Private p_botonesNoVenta As Panel
Private Panel5 As Panel
Private et_comentarioNoVenta As EditText
+ Private r_opcion5 As RadioButton
Private r_opcion4 As RadioButton
Private r_opcion3 As RadioButton
Private r_opcion2 As RadioButton
@@ -79,6 +81,18 @@ Sub Globals
Private l_NoVenta As Label
Dim motivo As String
Private l_venta As Label
+ Private camEx As CameraExClass
+ Dim fototomada As String = "0"
+ Private frontCamera As Boolean = False
+ Private p_camara As Panel
+ Private b_cam As Button
+ Private b_foto_inci As Button
+ Private p_cam As Panel
+ Dim sDate As String
+ Dim sTime As String
+ Private p_camara2 As Panel
+ Private nombreFoto As String
+ Dim fotoCerrado As String = ""
End Sub
Sub Activity_Create(FirstTime As Boolean)
@@ -138,7 +152,6 @@ Sub Activity_Create(FirstTime As Boolean)
c.Position =0
SEMANA = c.GetString("CUANTOS")
c.Close
-
If SEMANA > 0 Then
c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA"))
c.Position =0
@@ -149,6 +162,8 @@ End Sub
Sub Activity_Resume
Log("MAPA_RUTAS RESUME")
+ InitializeCamera
+ fotoCerrado = ""
Starter.rp.Check(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
If Result Then
@@ -182,6 +197,9 @@ Sub Activity_Resume
ventaIniciada
End If
End If
+ p_camara.Top = 0 : p_camara.Left = 0
+ p_camara.Width = Activity.Width : p_camara.Height = Activity.Height
+ Subs.centraPanel(p_camara2, Activity.Width)
End Sub
Sub MapFragment1_Ready
@@ -320,12 +338,22 @@ Sub OnInfoWindowClickListener1_click(Marker1 As Marker)
Log("Tooltip clicked")
skmt.ExecNonQuery("delete from CUENTAA")
skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?) ", Array As Object(Marker1.Title))
-' Activity.Finish
- Starter.pre_viejo = Subs.traeTotalClientepreventaparacredito
- l_venta.Text = "Presiona el boton de ""Iniciar"" para inicar la venta"
- b_inicioVenta.Enabled = True
- b_finVenta.Enabled = False
- p_transparenciaIniciaInicioFinVenta.Visible = True
+ c = Starter.skmt.ExecQuery("SELECT * FROM FOTOINICIAL")
+ If c.RowCount = 0 Then
+ p_camara.Visible = True
+ InitializeCamera
+ p_camara.Left = 0
+ p_camara.Visible = True
+ nombreFoto = "inicio"
+ b_foto_inci.Text = "Foto tienda"
+ Else
+' Activity.Finish
+ Starter.pre_viejo = Subs.traeTotalClientepreventaparacredito
+ l_venta.Text = "Presiona el boton de ""Iniciar"" para inicar la venta"
+ b_inicioVenta.Enabled = True
+ b_finVenta.Enabled = False
+ p_transparenciaIniciaInicioFinVenta.Visible = True
+ End If
' B4XPages.ShowPage("Cliente")
End Sub
@@ -456,7 +484,7 @@ Private Sub b_guardarPeso_Click
Private peso As Double = et_guardarPeso.Text
et_guardarPeso.Text = peso
- Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "")
+ Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "")
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, "", "", $"Venta:${et_guardarPeso.text}"$)
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
Starter.enVenta = False
@@ -495,24 +523,34 @@ Private Sub b_guardaNoVenta_Click
motivo = "NO COMPRA"
Else If r_opcion3.Checked Then
motivo = "CON PRODUCTO"
- Else
+ Else If r_opcion4.Checked Then
motivo = "NO ESTA EL ENCARGADO"
+ Else
+ motivo = "CANCELACION"
+ End If
+ If motivo = "CERRADO" And fotoCerrado = "" Then
+ nombreFoto = Subs.traeCliente & "_cerrado"
+ p_camara.Visible = True
+ InitializeCamera
+ p_camara.Left = 0
+ p_camara.Visible = True
+ p_camara.BringToFront
+ b_foto_inci.Text = "Foto tienda"
+ Else
+ DateTime.DateFormat="yy-MM-dd HH:mm:ss"
+ Dim fecha As String=DateTime.Date(DateTime.Now)
+ Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado)
+ Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
+ Starter.enVenta = False
+ Subs.enVenta(0, "")
+ Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+ p_noVenta.Visible = False
+ p_guardarPeso.Visible = False
+ p_transparenciaIniciaInicioFinVenta.Visible = False
+ gmap.Clear
+ todos = 1
+ MapFragment1_Ready
End If
- DateTime.DateFormat="yy-MM-dd HH:mm:ss"
- Dim fecha As String=DateTime.Date(DateTime.Now)
-
- Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text)
- Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
- Starter.enVenta = False
- Subs.enVenta(0, "")
-
- Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
- p_noVenta.Visible = False
- p_guardarPeso.Visible = False
- p_transparenciaIniciaInicioFinVenta.Visible = False
- gmap.Clear
- todos = 1
- MapFragment1_Ready
End Sub
Private Sub b_cancelaNoVenta_Click
@@ -521,4 +559,154 @@ End Sub
Private Sub p_inicioFinVenta_Click
+End Sub
+
+Private Sub b_foto_inci_Click
+ camEx.TakePicture
+End Sub
+
+Private Sub InitializeCamera
+' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
+' Wait For B4XPage_PermissionResult (Permission As String, resulta As Boolean)
+' If resulta Then
+ camEx.Initialize(p_cam, frontCamera, Me, "Camera1")
+ frontCamera = camEx.Front
+' Else
+' ToastMessageShow("Sin permisos de camara!!!", True)
+' End If
+End Sub
+
+Sub Camera1_Ready (Success As Boolean)
+ If Success Then
+ camEx.SetJpegQuality(90)
+ camEx.SetContinuousAutoFocus
+ camEx.CommitParameters
+ camEx.StartPreview
+ Log(camEx.GetPreviewSize)
+ Else
+ ToastMessageShow("Cannot open camera.", True)
+ End If
+End Sub
+
+Sub Camera1_PictureTaken (Data() As Byte)
+ If b_foto_inci.Text = "Foto tienda" Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
+ Dim filename As String = fototomada
+ Dim dir As String = File.DirInternal
+ camEx.SavePictureToFile(Data, dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename), True)
+ Dim Dirp As String = File.DirInternal
+ Dim dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/adm")
+ dir = "/adm"
+ Log("creado en promotoria " & Dirp & dir)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ Try
+ File.MakeDir(Dirp & dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & dir & Dir2)
+ Catch
+ Dir2 = ""
+ Log("creado en raiz")
+ End Try
+ DateTime.DateFormat = "MM/dd/yyyy"
+ DateTime.TimeFormat = "HH:mm:ss"
+ sDate = DateTime.Date(DateTime.Now)
+ sTime = DateTime.Time(DateTime.Now)
+ camEx.SavePictureToFile(Data, Dirp&dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename)
+
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirInternal & dir, filename, 450, 600, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ If nombreFoto = "inicio" Then
+ Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD))
+ b_foto_inci.Text = "Foto usuario"
+ ChangeCamera_Click
+ Else
+ fotoCerrado = fototomada
+ p_camara.Visible = False
+ StopCamera
+ End If
+ Else If b_foto_inci.Text = "Foto usuario" Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ fototomada = fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
+ Dim filename As String = fototomada
+ Dim dir As String = File.DirInternal
+ camEx.SavePictureToFile(Data, dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename), True)
+ Dim Dirp As String = File.DirInternal
+ Dim dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/adm")
+ dir = "/adm"
+ Log("creado en promotoria " & Dirp & dir)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ Try
+ File.MakeDir(Dirp & dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & dir & Dir2)
+ Catch
+ dir = ""
+ Log("creado en raiz")
+ End Try
+ DateTime.DateFormat = "MM/dd/yyyy"
+ DateTime.TimeFormat = "HH:mm:ss"
+ sDate = DateTime.Date(DateTime.Now)
+ sTime = DateTime.Time(DateTime.Now)
+ camEx.SavePictureToFile(Data, Dirp&dir, filename)
+ camEx.StartPreview 'restart preview
+ ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(dir, filename) & dir &"," & filename)
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirInternal & dir, filename, 450, 600, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen ))
+ b_foto_inci.Text = "Foto tienda"
+ ChangeCamera_Click
+ p_camara.Visible = False
+ StopCamera
+ If Subs.traeCliente = "0" Then
+ B4XPages.MainPage.tipo_venta = "ABORDO"
+ Else If Subs.traeCliente = "1" Then
+ B4XPages.MainPage.tipo_venta = "RECARGA"
+ Else
+ B4XPages.MainPage.tipo_venta = "PREVENTA"
+ End If
+' B4XPages.ShowPage("productos")
+' p_transparentePidePeso.Visible = True
+ End If
+End Sub
+
+Sub ChangeCamera_Click
+ camEx.Release
+ frontCamera = Not(frontCamera)
+ InitializeCamera
+End Sub
+
+Private Sub StopCamera
+' Capturing = False
+ If camEx.IsInitialized Then
+ camEx.Release
+ End If
+End Sub
+
+Private Sub p_camara_Click
+
End Sub
\ No newline at end of file
diff --git a/B4A/Starter.bas b/B4A/Starter.bas
index b28f837..5652b4d 100644
--- a/B4A/Starter.bas
+++ b/B4A/Starter.bas
@@ -153,8 +153,13 @@ Sub JobDone(Job As HttpJob)
LogColor(">>>>>> " & reqManager.reqsList.Size & " - " & reqManager.reqsList, Colors.Blue)
End If
If Job.Success = False Then
- Log("ERROR")
- LogColor("Error: " & Job.tag & " : " & Job.ErrorMessage, Colors.red)
+ LogColor("############################################", Colors.red)
+ LogColor("###### JobError: " & Job.Tag & CRLF & Job.ErrorMessage, Colors.red)
+ LogColor("############################################", Colors.red)
+' LogColor("Error2: " & Job.ErrorMessage, Colors.red)
+' LogColor("Error1: " & reqManager.HandleJob(Job).tag, Colors.red)
+' LogColor("Error: " & reqManager.HandleJob(Job).tag & " : " & Job.ErrorMessage, Colors.red)
+' Job.Release
Else 'If Job Success then ...
' Log(3)
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.RGB(0,160,0)) 'Mod por CHV - 211027
diff --git a/B4A/Subs.bas b/B4A/Subs.bas
index b6e1354..144bf9f 100644
--- a/B4A/Subs.bas
+++ b/B4A/Subs.bas
@@ -803,13 +803,13 @@ Sub guardaProductoSinGestion(cedis As String, costoU As String, cant As String,
End Sub
'Inserta un peso en la tabla "pesos"
-Sub guardaPeso(tipo As String, almacen As String, ruta As String, usuario As String, cliente As String, peso As String, motivo As String, comentario As String)
+Sub guardaPeso(tipo As String, almacen As String, ruta As String, usuario As String, cliente As String, peso As String, motivo As String, comentario As String, fotoCerrado As String)
' LogColor("guardaPesoSinGestion: "&cliente&", peso="&peso, Colors.Magenta)
' CREATE TABLE PESOS(PE_IDALMACEN TEXT, PE_RUTA TEXT, PE_USUARIO TEXT, PE_CLIENTE TEXT, PE_PESO TEXT, PE_FECHA TEXT, PE_FECHA_SINC TEXT)
DateTime.DateFormat="yy-MM-dd HH:mm:ss"
Dim fecha As String=DateTime.Date(DateTime.Now)
B4XPages.MainPage.skmt.ExecNonQuery($"delete from pesos where pe_cliente in (select cuenta from cuentaa) and pe_tipo = '${tipo}'"$)
- B4XPages.MainPage.skmt.ExecNonQuery($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}')"$)
+ B4XPages.MainPage.skmt.ExecNonQuery($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO, PE_FOTO_CERRADO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}', '${fotoCerrado}')"$)
' Log($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}')"$)
End Sub
@@ -1558,9 +1558,9 @@ Sub traeinventario(id As String) As String
Return inventario
End Sub
-'Regresa el nombre del cliente del id dado.
+'Regresa el nombre del cliente del id dado. (Busca en kmt_info y kmt_info2 que son los fuera de frecuencia)
Sub traeNombreCliente(id As String) As String
- Private c As ResultSet = Starter.skmt.ExecQuery($"select CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = '${id}'"$)
+ Private c As ResultSet = Starter.skmt.ExecQuery($"select CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = '${id}' union select CAT_CL_NOMBRE from kmt_info2 where CAT_CL_CODIGO = '${id}'"$)
Private n As String = "N/A"
Do While c.NextRow
n = c.GetString("CAT_CL_NOMBRE")