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")