From 14d09de64d12df03123a5d07c33eff09562508fd Mon Sep 17 00:00:00 2001 From: Jose Alberto Guerra Ugalde Date: Mon, 16 Oct 2023 19:11:15 -0600 Subject: [PATCH] .. --- .gitignore | 3 +- B4A - Copy/B4XMainPage.bas | 530 ---- B4A - Copy/BatteryUtilities.bas | 126 - B4A - Copy/C_Cliente.bas | 1202 -------- B4A - Copy/C_Clientes.bas | 213 -- B4A - Copy/C_Historico.bas | 148 - B4A - Copy/C_Mapas.bas | 6 - B4A - Copy/C_NoVenta.bas | 95 - B4A - Copy/C_Nota.bas | 319 -- B4A - Copy/C_Principal.bas | 2726 ----------------- B4A - Copy/C_Productos.bas | 1113 ------- B4A - Copy/C_TicketsDia.bas | 149 - B4A - Copy/C_updateAvailable.bas | 24 - B4A - Copy/CameraExClass.bas | 290 -- B4A - Copy/DBRequestManager.bas | 275 -- B4A - Copy/Durakelo.b4a | 178 -- B4A - Copy/Durakelo.b4a.meta | 51 - B4A - Copy/EscPosPrinter.bas | 1148 ------- B4A - Copy/Files/alcancia.png | Bin 2249 -> 0 bytes B4A - Copy/Files/alert2.png | Bin 632 -> 0 bytes B4A - Copy/Files/alerta.jpg | Bin 1459 -> 0 bytes B4A - Copy/Files/alerta_amarilla.png | Bin 62562 -> 0 bytes B4A - Copy/Files/amarillo.png | Bin 10753 -> 0 bytes B4A - Copy/Files/anterior.jpg | Bin 19358 -> 0 bytes B4A - Copy/Files/buscar.bal | Bin 2356 -> 0 bytes B4A - Copy/Files/carrito.png | Bin 22596 -> 0 bytes B4A - Copy/Files/celltitle.bal | Bin 1638 -> 0 bytes B4A - Copy/Files/cliente.bal | Bin 33082 -> 0 bytes B4A - Copy/Files/clientes.bal | Bin 4890 -> 0 bytes B4A - Copy/Files/detalle_promo.bal | Bin 2682 -> 0 bytes B4A - Copy/Files/durakelo.png | Bin 7098 -> 0 bytes B4A - Copy/Files/durakelo1.png | Bin 5896 -> 0 bytes B4A - Copy/Files/durakelo_192x192.png | Bin 7053 -> 0 bytes B4A - Copy/Files/engrane.jpg | Bin 4132 -> 0 bytes B4A - Copy/Files/engrane3.png | Bin 81204 -> 0 bytes B4A - Copy/Files/espera.gif | Bin 247213 -> 0 bytes B4A - Copy/Files/fondo_kmt.jpg | Bin 33689 -> 0 bytes B4A - Copy/Files/foto.bal | Bin 3355 -> 0 bytes B4A - Copy/Files/guardagestion.bal | Bin 10853 -> 0 bytes B4A - Copy/Files/guna_viejo.png | Bin 3543 -> 0 bytes B4A - Copy/Files/historico.bal | Bin 6934 -> 0 bytes B4A - Copy/Files/infonavit1.jpg | Bin 30576 -> 0 bytes B4A - Copy/Files/itembuttonblue.png | Bin 2647 -> 0 bytes B4A - Copy/Files/k.png | Bin 34395 -> 0 bytes B4A - Copy/Files/kelloggs.png | Bin 4718 -> 0 bytes B4A - Copy/Files/keymon_logo.png | Bin 10983 -> 0 bytes B4A - Copy/Files/kmt.db | Bin 55296 -> 0 bytes B4A - Copy/Files/login.bal | Bin 11314 -> 0 bytes B4A - Copy/Files/logo sanfer.jpg | Bin 7991 -> 0 bytes B4A - Copy/Files/logo_exitus1.jpg | Bin 30576 -> 0 bytes B4A - Copy/Files/mainpage.bal | Bin 1584 -> 0 bytes B4A - Copy/Files/malo.jpg | Bin 8764 -> 0 bytes B4A - Copy/Files/mapa.bal | Bin 1861 -> 0 bytes B4A - Copy/Files/mapa_rutas.bal | Bin 5796 -> 0 bytes B4A - Copy/Files/marker-azul-0.png | Bin 6263 -> 0 bytes B4A - Copy/Files/marker-azul-1.png | Bin 5003 -> 0 bytes B4A - Copy/Files/marker-azul-10.png | Bin 6352 -> 0 bytes B4A - Copy/Files/marker-azul-100.png | Bin 6557 -> 0 bytes B4A - Copy/Files/marker-azul-11.png | Bin 5047 -> 0 bytes B4A - Copy/Files/marker-azul-12.png | Bin 6257 -> 0 bytes B4A - Copy/Files/marker-azul-13.png | Bin 6611 -> 0 bytes B4A - Copy/Files/marker-azul-14.png | Bin 5762 -> 0 bytes B4A - Copy/Files/marker-azul-15.png | Bin 5824 -> 0 bytes B4A - Copy/Files/marker-azul-16.png | Bin 6420 -> 0 bytes B4A - Copy/Files/marker-azul-17.png | Bin 6031 -> 0 bytes B4A - Copy/Files/marker-azul-18.png | Bin 6675 -> 0 bytes B4A - Copy/Files/marker-azul-19.png | Bin 6371 -> 0 bytes B4A - Copy/Files/marker-azul-2.png | Bin 6174 -> 0 bytes B4A - Copy/Files/marker-azul-20.png | Bin 7214 -> 0 bytes B4A - Copy/Files/marker-azul-21.png | Bin 6148 -> 0 bytes B4A - Copy/Files/marker-azul-22.png | Bin 7041 -> 0 bytes B4A - Copy/Files/marker-azul-23.png | Bin 7355 -> 0 bytes B4A - Copy/Files/marker-azul-24.png | Bin 6574 -> 0 bytes B4A - Copy/Files/marker-azul-25.png | Bin 6675 -> 0 bytes B4A - Copy/Files/marker-azul-26.png | Bin 7158 -> 0 bytes B4A - Copy/Files/marker-azul-27.png | Bin 6958 -> 0 bytes B4A - Copy/Files/marker-azul-28.png | Bin 7403 -> 0 bytes B4A - Copy/Files/marker-azul-29.png | Bin 7139 -> 0 bytes B4A - Copy/Files/marker-azul-3.png | Bin 6423 -> 0 bytes B4A - Copy/Files/marker-azul-30.png | Bin 7453 -> 0 bytes B4A - Copy/Files/marker-azul-31.png | Bin 6467 -> 0 bytes B4A - Copy/Files/marker-azul-32.png | Bin 7417 -> 0 bytes B4A - Copy/Files/marker-azul-33.png | Bin 7670 -> 0 bytes B4A - Copy/Files/marker-azul-34.png | Bin 7027 -> 0 bytes B4A - Copy/Files/marker-azul-35.png | Bin 7056 -> 0 bytes B4A - Copy/Files/marker-azul-36.png | Bin 7581 -> 0 bytes B4A - Copy/Files/marker-azul-37.png | Bin 7308 -> 0 bytes B4A - Copy/Files/marker-azul-38.png | Bin 7806 -> 0 bytes B4A - Copy/Files/marker-azul-39.png | Bin 7600 -> 0 bytes B4A - Copy/Files/marker-azul-4.png | Bin 5715 -> 0 bytes B4A - Copy/Files/marker-azul-40.png | Bin 6897 -> 0 bytes B4A - Copy/Files/marker-azul-41.png | Bin 5745 -> 0 bytes B4A - Copy/Files/marker-azul-42.png | Bin 6798 -> 0 bytes B4A - Copy/Files/marker-azul-43.png | Bin 7028 -> 0 bytes B4A - Copy/Files/marker-azul-44.png | Bin 6204 -> 0 bytes B4A - Copy/Files/marker-azul-45.png | Bin 6200 -> 0 bytes B4A - Copy/Files/marker-azul-46.png | Bin 6784 -> 0 bytes B4A - Copy/Files/marker-azul-47.png | Bin 6485 -> 0 bytes B4A - Copy/Files/marker-azul-48.png | Bin 7064 -> 0 bytes B4A - Copy/Files/marker-azul-49.png | Bin 6796 -> 0 bytes B4A - Copy/Files/marker-azul-5.png | Bin 5649 -> 0 bytes B4A - Copy/Files/marker-azul-50.png | Bin 6798 -> 0 bytes B4A - Copy/Files/marker-azul-51.png | Bin 5783 -> 0 bytes B4A - Copy/Files/marker-azul-52.png | Bin 6659 -> 0 bytes B4A - Copy/Files/marker-azul-53.png | Bin 6936 -> 0 bytes B4A - Copy/Files/marker-azul-54.png | Bin 6179 -> 0 bytes B4A - Copy/Files/marker-azul-55.png | Bin 6289 -> 0 bytes B4A - Copy/Files/marker-azul-56.png | Bin 6745 -> 0 bytes B4A - Copy/Files/marker-azul-57.png | Bin 6486 -> 0 bytes B4A - Copy/Files/marker-azul-58.png | Bin 7011 -> 0 bytes B4A - Copy/Files/marker-azul-59.png | Bin 6856 -> 0 bytes B4A - Copy/Files/marker-azul-6.png | Bin 6224 -> 0 bytes B4A - Copy/Files/marker-azul-60.png | Bin 7326 -> 0 bytes B4A - Copy/Files/marker-azul-61.png | Bin 6109 -> 0 bytes B4A - Copy/Files/marker-azul-62.png | Bin 7084 -> 0 bytes B4A - Copy/Files/marker-azul-63.png | Bin 7158 -> 0 bytes B4A - Copy/Files/marker-azul-64.png | Bin 6209 -> 0 bytes B4A - Copy/Files/marker-azul-65.png | Bin 6708 -> 0 bytes B4A - Copy/Files/marker-azul-66.png | Bin 6722 -> 0 bytes B4A - Copy/Files/marker-azul-67.png | Bin 6759 -> 0 bytes B4A - Copy/Files/marker-azul-68.png | Bin 6992 -> 0 bytes B4A - Copy/Files/marker-azul-69.png | Bin 6725 -> 0 bytes B4A - Copy/Files/marker-azul-7.png | Bin 5996 -> 0 bytes B4A - Copy/Files/marker-azul-70.png | Bin 6602 -> 0 bytes B4A - Copy/Files/marker-azul-71.png | Bin 6164 -> 0 bytes B4A - Copy/Files/marker-azul-72.png | Bin 7112 -> 0 bytes B4A - Copy/Files/marker-azul-73.png | Bin 7166 -> 0 bytes B4A - Copy/Files/marker-azul-74.png | Bin 6147 -> 0 bytes B4A - Copy/Files/marker-azul-75.png | Bin 6726 -> 0 bytes B4A - Copy/Files/marker-azul-76.png | Bin 6752 -> 0 bytes B4A - Copy/Files/marker-azul-77.png | Bin 6805 -> 0 bytes B4A - Copy/Files/marker-azul-78.png | Bin 7000 -> 0 bytes B4A - Copy/Files/marker-azul-79.png | Bin 6698 -> 0 bytes B4A - Copy/Files/marker-azul-8.png | Bin 6501 -> 0 bytes B4A - Copy/Files/marker-azul-80.png | Bin 6811 -> 0 bytes B4A - Copy/Files/marker-azul-81.png | Bin 6367 -> 0 bytes B4A - Copy/Files/marker-azul-82.png | Bin 7319 -> 0 bytes B4A - Copy/Files/marker-azul-83.png | Bin 7431 -> 0 bytes B4A - Copy/Files/marker-azul-84.png | Bin 6408 -> 0 bytes B4A - Copy/Files/marker-azul-85.png | Bin 6936 -> 0 bytes B4A - Copy/Files/marker-azul-86.png | Bin 6964 -> 0 bytes B4A - Copy/Files/marker-azul-87.png | Bin 6979 -> 0 bytes B4A - Copy/Files/marker-azul-88.png | Bin 7224 -> 0 bytes B4A - Copy/Files/marker-azul-89.png | Bin 6916 -> 0 bytes B4A - Copy/Files/marker-azul-9.png | Bin 6313 -> 0 bytes B4A - Copy/Files/marker-azul-90.png | Bin 6532 -> 0 bytes B4A - Copy/Files/marker-azul-91.png | Bin 6127 -> 0 bytes B4A - Copy/Files/marker-azul-92.png | Bin 7033 -> 0 bytes B4A - Copy/Files/marker-azul-93.png | Bin 7056 -> 0 bytes B4A - Copy/Files/marker-azul-94.png | Bin 6163 -> 0 bytes B4A - Copy/Files/marker-azul-95.png | Bin 6658 -> 0 bytes B4A - Copy/Files/marker-azul-96.png | Bin 6738 -> 0 bytes B4A - Copy/Files/marker-azul-97.png | Bin 6742 -> 0 bytes B4A - Copy/Files/marker-azul-98.png | Bin 6973 -> 0 bytes B4A - Copy/Files/marker-azul-99.png | Bin 6723 -> 0 bytes B4A - Copy/Files/marker-rojo-0.png | Bin 7158 -> 0 bytes B4A - Copy/Files/marker-rojo-1.png | Bin 6466 -> 0 bytes B4A - Copy/Files/marker-rojo-10.png | Bin 7716 -> 0 bytes B4A - Copy/Files/marker-rojo-100.png | Bin 8381 -> 0 bytes B4A - Copy/Files/marker-rojo-11.png | Bin 6846 -> 0 bytes B4A - Copy/Files/marker-rojo-12.png | Bin 8555 -> 0 bytes B4A - Copy/Files/marker-rojo-13.png | Bin 8578 -> 0 bytes B4A - Copy/Files/marker-rojo-14.png | Bin 6949 -> 0 bytes B4A - Copy/Files/marker-rojo-15.png | Bin 7890 -> 0 bytes B4A - Copy/Files/marker-rojo-16.png | Bin 7874 -> 0 bytes B4A - Copy/Files/marker-rojo-17.png | Bin 8055 -> 0 bytes B4A - Copy/Files/marker-rojo-18.png | Bin 8274 -> 0 bytes B4A - Copy/Files/marker-rojo-19.png | Bin 7952 -> 0 bytes B4A - Copy/Files/marker-rojo-2.png | Bin 8319 -> 0 bytes B4A - Copy/Files/marker-rojo-20.png | Bin 8793 -> 0 bytes B4A - Copy/Files/marker-rojo-21.png | Bin 8125 -> 0 bytes B4A - Copy/Files/marker-rojo-22.png | Bin 9333 -> 0 bytes B4A - Copy/Files/marker-rojo-23.png | Bin 9432 -> 0 bytes B4A - Copy/Files/marker-rojo-24.png | Bin 8215 -> 0 bytes B4A - Copy/Files/marker-rojo-25.png | Bin 8937 -> 0 bytes B4A - Copy/Files/marker-rojo-26.png | Bin 8945 -> 0 bytes B4A - Copy/Files/marker-rojo-27.png | Bin 9044 -> 0 bytes B4A - Copy/Files/marker-rojo-28.png | Bin 9293 -> 0 bytes B4A - Copy/Files/marker-rojo-29.png | Bin 8952 -> 0 bytes B4A - Copy/Files/marker-rojo-3.png | Bin 8509 -> 0 bytes B4A - Copy/Files/marker-rojo-30.png | Bin 8963 -> 0 bytes B4A - Copy/Files/marker-rojo-31.png | Bin 8308 -> 0 bytes B4A - Copy/Files/marker-rojo-32.png | Bin 9408 -> 0 bytes B4A - Copy/Files/marker-rojo-33.png | Bin 9548 -> 0 bytes B4A - Copy/Files/marker-rojo-34.png | Bin 8384 -> 0 bytes B4A - Copy/Files/marker-rojo-35.png | Bin 9076 -> 0 bytes B4A - Copy/Files/marker-rojo-36.png | Bin 9137 -> 0 bytes B4A - Copy/Files/marker-rojo-37.png | Bin 9204 -> 0 bytes B4A - Copy/Files/marker-rojo-38.png | Bin 9389 -> 0 bytes B4A - Copy/Files/marker-rojo-39.png | Bin 9098 -> 0 bytes B4A - Copy/Files/marker-rojo-4.png | Bin 6743 -> 0 bytes B4A - Copy/Files/marker-rojo-40.png | Bin 7710 -> 0 bytes B4A - Copy/Files/marker-rojo-41.png | Bin 6914 -> 0 bytes B4A - Copy/Files/marker-rojo-42.png | Bin 8382 -> 0 bytes B4A - Copy/Files/marker-rojo-43.png | Bin 8490 -> 0 bytes B4A - Copy/Files/marker-rojo-44.png | Bin 7027 -> 0 bytes B4A - Copy/Files/marker-rojo-45.png | Bin 7884 -> 0 bytes B4A - Copy/Files/marker-rojo-46.png | Bin 7894 -> 0 bytes B4A - Copy/Files/marker-rojo-47.png | Bin 8095 -> 0 bytes B4A - Copy/Files/marker-rojo-48.png | Bin 8212 -> 0 bytes B4A - Copy/Files/marker-rojo-49.png | Bin 7898 -> 0 bytes B4A - Copy/Files/marker-rojo-5.png | Bin 7658 -> 0 bytes B4A - Copy/Files/marker-rojo-50.png | Bin 8457 -> 0 bytes B4A - Copy/Files/marker-rojo-51.png | Bin 7685 -> 0 bytes B4A - Copy/Files/marker-rojo-52.png | Bin 8969 -> 0 bytes B4A - Copy/Files/marker-rojo-53.png | Bin 9015 -> 0 bytes B4A - Copy/Files/marker-rojo-54.png | Bin 7712 -> 0 bytes B4A - Copy/Files/marker-rojo-55.png | Bin 8331 -> 0 bytes B4A - Copy/Files/marker-rojo-56.png | Bin 8461 -> 0 bytes B4A - Copy/Files/marker-rojo-57.png | Bin 8552 -> 0 bytes B4A - Copy/Files/marker-rojo-58.png | Bin 8710 -> 0 bytes B4A - Copy/Files/marker-rojo-59.png | Bin 8349 -> 0 bytes B4A - Copy/Files/marker-rojo-6.png | Bin 7660 -> 0 bytes B4A - Copy/Files/marker-rojo-60.png | Bin 8299 -> 0 bytes B4A - Copy/Files/marker-rojo-61.png | Bin 7640 -> 0 bytes B4A - Copy/Files/marker-rojo-62.png | Bin 8976 -> 0 bytes B4A - Copy/Files/marker-rojo-63.png | Bin 8978 -> 0 bytes B4A - Copy/Files/marker-rojo-64.png | Bin 7821 -> 0 bytes B4A - Copy/Files/marker-rojo-65.png | Bin 8488 -> 0 bytes B4A - Copy/Files/marker-rojo-66.png | Bin 8530 -> 0 bytes B4A - Copy/Files/marker-rojo-67.png | Bin 8660 -> 0 bytes B4A - Copy/Files/marker-rojo-68.png | Bin 8870 -> 0 bytes B4A - Copy/Files/marker-rojo-69.png | Bin 8491 -> 0 bytes B4A - Copy/Files/marker-rojo-7.png | Bin 7887 -> 0 bytes B4A - Copy/Files/marker-rojo-70.png | Bin 8516 -> 0 bytes B4A - Copy/Files/marker-rojo-71.png | Bin 7841 -> 0 bytes B4A - Copy/Files/marker-rojo-72.png | Bin 9071 -> 0 bytes B4A - Copy/Files/marker-rojo-73.png | Bin 9199 -> 0 bytes B4A - Copy/Files/marker-rojo-74.png | Bin 7975 -> 0 bytes B4A - Copy/Files/marker-rojo-75.png | Bin 8686 -> 0 bytes B4A - Copy/Files/marker-rojo-76.png | Bin 8686 -> 0 bytes B4A - Copy/Files/marker-rojo-77.png | Bin 8491 -> 0 bytes B4A - Copy/Files/marker-rojo-78.png | Bin 8917 -> 0 bytes B4A - Copy/Files/marker-rojo-79.png | Bin 8663 -> 0 bytes B4A - Copy/Files/marker-rojo-8.png | Bin 8205 -> 0 bytes B4A - Copy/Files/marker-rojo-80.png | Bin 8771 -> 0 bytes B4A - Copy/Files/marker-rojo-81.png | Bin 8092 -> 0 bytes B4A - Copy/Files/marker-rojo-82.png | Bin 9282 -> 0 bytes B4A - Copy/Files/marker-rojo-83.png | Bin 9374 -> 0 bytes B4A - Copy/Files/marker-rojo-84.png | Bin 8187 -> 0 bytes B4A - Copy/Files/marker-rojo-85.png | Bin 8843 -> 0 bytes B4A - Copy/Files/marker-rojo-86.png | Bin 8822 -> 0 bytes B4A - Copy/Files/marker-rojo-87.png | Bin 9009 -> 0 bytes B4A - Copy/Files/marker-rojo-88.png | Bin 9181 -> 0 bytes B4A - Copy/Files/marker-rojo-89.png | Bin 8914 -> 0 bytes B4A - Copy/Files/marker-rojo-9.png | Bin 7695 -> 0 bytes B4A - Copy/Files/marker-rojo-90.png | Bin 8391 -> 0 bytes B4A - Copy/Files/marker-rojo-91.png | Bin 7698 -> 0 bytes B4A - Copy/Files/marker-rojo-92.png | Bin 9013 -> 0 bytes B4A - Copy/Files/marker-rojo-93.png | Bin 9091 -> 0 bytes B4A - Copy/Files/marker-rojo-94.png | Bin 7868 -> 0 bytes B4A - Copy/Files/marker-rojo-95.png | Bin 8571 -> 0 bytes B4A - Copy/Files/marker-rojo-96.png | Bin 8545 -> 0 bytes B4A - Copy/Files/marker-rojo-97.png | Bin 8647 -> 0 bytes B4A - Copy/Files/marker-rojo-98.png | Bin 8905 -> 0 bytes B4A - Copy/Files/marker-rojo-99.png | Bin 8582 -> 0 bytes B4A - Copy/Files/marker-verde-0.png | Bin 5490 -> 0 bytes B4A - Copy/Files/marker-verde-1.png | Bin 4797 -> 0 bytes B4A - Copy/Files/marker-verde-10.png | Bin 5730 -> 0 bytes B4A - Copy/Files/marker-verde-100.png | Bin 6404 -> 0 bytes B4A - Copy/Files/marker-verde-11.png | Bin 5138 -> 0 bytes B4A - Copy/Files/marker-verde-12.png | Bin 6193 -> 0 bytes B4A - Copy/Files/marker-verde-13.png | Bin 6360 -> 0 bytes B4A - Copy/Files/marker-verde-14.png | Bin 5252 -> 0 bytes B4A - Copy/Files/marker-verde-15.png | Bin 5871 -> 0 bytes B4A - Copy/Files/marker-verde-16.png | Bin 5867 -> 0 bytes B4A - Copy/Files/marker-verde-17.png | Bin 6011 -> 0 bytes B4A - Copy/Files/marker-verde-18.png | Bin 6161 -> 0 bytes B4A - Copy/Files/marker-verde-19.png | Bin 5925 -> 0 bytes B4A - Copy/Files/marker-verde-2.png | Bin 5996 -> 0 bytes B4A - Copy/Files/marker-verde-20.png | Bin 6525 -> 0 bytes B4A - Copy/Files/marker-verde-21.png | Bin 6208 -> 0 bytes B4A - Copy/Files/marker-verde-22.png | Bin 7202 -> 0 bytes B4A - Copy/Files/marker-verde-23.png | Bin 7286 -> 0 bytes B4A - Copy/Files/marker-verde-24.png | Bin 6339 -> 0 bytes B4A - Copy/Files/marker-verde-25.png | Bin 6896 -> 0 bytes B4A - Copy/Files/marker-verde-26.png | Bin 6909 -> 0 bytes B4A - Copy/Files/marker-verde-27.png | Bin 6982 -> 0 bytes B4A - Copy/Files/marker-verde-28.png | Bin 7105 -> 0 bytes B4A - Copy/Files/marker-verde-29.png | Bin 6868 -> 0 bytes B4A - Copy/Files/marker-verde-3.png | Bin 6069 -> 0 bytes B4A - Copy/Files/marker-verde-30.png | Bin 6794 -> 0 bytes B4A - Copy/Files/marker-verde-31.png | Bin 6270 -> 0 bytes B4A - Copy/Files/marker-verde-32.png | Bin 7248 -> 0 bytes B4A - Copy/Files/marker-verde-33.png | Bin 7318 -> 0 bytes B4A - Copy/Files/marker-verde-34.png | Bin 6424 -> 0 bytes B4A - Copy/Files/marker-verde-35.png | Bin 6925 -> 0 bytes B4A - Copy/Files/marker-verde-36.png | Bin 6936 -> 0 bytes B4A - Copy/Files/marker-verde-37.png | Bin 6979 -> 0 bytes B4A - Copy/Files/marker-verde-38.png | Bin 7198 -> 0 bytes B4A - Copy/Files/marker-verde-39.png | Bin 6942 -> 0 bytes B4A - Copy/Files/marker-verde-4.png | Bin 4914 -> 0 bytes B4A - Copy/Files/marker-verde-40.png | Bin 5884 -> 0 bytes B4A - Copy/Files/marker-verde-41.png | Bin 5362 -> 0 bytes B4A - Copy/Files/marker-verde-42.png | Bin 6341 -> 0 bytes B4A - Copy/Files/marker-verde-43.png | Bin 6483 -> 0 bytes B4A - Copy/Files/marker-verde-44.png | Bin 5462 -> 0 bytes B4A - Copy/Files/marker-verde-45.png | Bin 6076 -> 0 bytes B4A - Copy/Files/marker-verde-46.png | Bin 6110 -> 0 bytes B4A - Copy/Files/marker-verde-47.png | Bin 6135 -> 0 bytes B4A - Copy/Files/marker-verde-48.png | Bin 6388 -> 0 bytes B4A - Copy/Files/marker-verde-49.png | Bin 6090 -> 0 bytes B4A - Copy/Files/marker-verde-5.png | Bin 5581 -> 0 bytes B4A - Copy/Files/marker-verde-50.png | Bin 6570 -> 0 bytes B4A - Copy/Files/marker-verde-51.png | Bin 5961 -> 0 bytes B4A - Copy/Files/marker-verde-52.png | Bin 6942 -> 0 bytes B4A - Copy/Files/marker-verde-53.png | Bin 7040 -> 0 bytes B4A - Copy/Files/marker-verde-54.png | Bin 6053 -> 0 bytes B4A - Copy/Files/marker-verde-55.png | Bin 6612 -> 0 bytes B4A - Copy/Files/marker-verde-56.png | Bin 6621 -> 0 bytes B4A - Copy/Files/marker-verde-57.png | Bin 6677 -> 0 bytes B4A - Copy/Files/marker-verde-58.png | Bin 6872 -> 0 bytes B4A - Copy/Files/marker-verde-59.png | Bin 6643 -> 0 bytes B4A - Copy/Files/marker-verde-6.png | Bin 5559 -> 0 bytes B4A - Copy/Files/marker-verde-60.png | Bin 6529 -> 0 bytes B4A - Copy/Files/marker-verde-61.png | Bin 5968 -> 0 bytes B4A - Copy/Files/marker-verde-62.png | Bin 6906 -> 0 bytes B4A - Copy/Files/marker-verde-63.png | Bin 6971 -> 0 bytes B4A - Copy/Files/marker-verde-64.png | Bin 5989 -> 0 bytes B4A - Copy/Files/marker-verde-65.png | Bin 6547 -> 0 bytes B4A - Copy/Files/marker-verde-66.png | Bin 6541 -> 0 bytes B4A - Copy/Files/marker-verde-67.png | Bin 6656 -> 0 bytes B4A - Copy/Files/marker-verde-68.png | Bin 6811 -> 0 bytes B4A - Copy/Files/marker-verde-69.png | Bin 6540 -> 0 bytes B4A - Copy/Files/marker-verde-7.png | Bin 5695 -> 0 bytes B4A - Copy/Files/marker-verde-70.png | Bin 6547 -> 0 bytes B4A - Copy/Files/marker-verde-71.png | Bin 5979 -> 0 bytes B4A - Copy/Files/marker-verde-72.png | Bin 6962 -> 0 bytes B4A - Copy/Files/marker-verde-73.png | Bin 7000 -> 0 bytes B4A - Copy/Files/marker-verde-74.png | Bin 6173 -> 0 bytes B4A - Copy/Files/marker-verde-75.png | Bin 6602 -> 0 bytes B4A - Copy/Files/marker-verde-76.png | Bin 6631 -> 0 bytes B4A - Copy/Files/marker-verde-77.png | Bin 6606 -> 0 bytes B4A - Copy/Files/marker-verde-78.png | Bin 6874 -> 0 bytes B4A - Copy/Files/marker-verde-79.png | Bin 6596 -> 0 bytes B4A - Copy/Files/marker-verde-8.png | Bin 5872 -> 0 bytes B4A - Copy/Files/marker-verde-80.png | Bin 6726 -> 0 bytes B4A - Copy/Files/marker-verde-81.png | Bin 6266 -> 0 bytes B4A - Copy/Files/marker-verde-82.png | Bin 7119 -> 0 bytes B4A - Copy/Files/marker-verde-83.png | Bin 7136 -> 0 bytes B4A - Copy/Files/marker-verde-84.png | Bin 6287 -> 0 bytes B4A - Copy/Files/marker-verde-85.png | Bin 6816 -> 0 bytes B4A - Copy/Files/marker-verde-86.png | Bin 6842 -> 0 bytes B4A - Copy/Files/marker-verde-87.png | Bin 6867 -> 0 bytes B4A - Copy/Files/marker-verde-88.png | Bin 7113 -> 0 bytes B4A - Copy/Files/marker-verde-89.png | Bin 6828 -> 0 bytes B4A - Copy/Files/marker-verde-9.png | Bin 5550 -> 0 bytes B4A - Copy/Files/marker-verde-90.png | Bin 6369 -> 0 bytes B4A - Copy/Files/marker-verde-91.png | Bin 5899 -> 0 bytes B4A - Copy/Files/marker-verde-92.png | Bin 6804 -> 0 bytes B4A - Copy/Files/marker-verde-93.png | Bin 6922 -> 0 bytes B4A - Copy/Files/marker-verde-94.png | Bin 5998 -> 0 bytes B4A - Copy/Files/marker-verde-95.png | Bin 6491 -> 0 bytes B4A - Copy/Files/marker-verde-96.png | Bin 6495 -> 0 bytes B4A - Copy/Files/marker-verde-97.png | Bin 6636 -> 0 bytes B4A - Copy/Files/marker-verde-98.png | Bin 6765 -> 0 bytes B4A - Copy/Files/marker-verde-99.png | Bin 6465 -> 0 bytes B4A - Copy/Files/noventa.bal | Bin 6199 -> 0 bytes B4A - Copy/Files/nuevocliente.bal | Bin 4282 -> 0 bytes B4A - Copy/Files/palomita_verde.png | Bin 159519 -> 0 bytes B4A - Copy/Files/pedido.bal | Bin 11431 -> 0 bytes B4A - Copy/Files/planfia_logo.png | Bin 22355 -> 0 bytes B4A - Copy/Files/planfia_logo_old.png | Bin 34019 -> 0 bytes B4A - Copy/Files/planfia_logo_old2.png | Bin 40821 -> 0 bytes B4A - Copy/Files/principal.bal | Bin 50306 -> 0 bytes B4A - Copy/Files/productos.bal | Bin 14466 -> 0 bytes B4A - Copy/Files/qr.bal | Bin 823 -> 0 bytes B4A - Copy/Files/rechazo.jpg | Bin 10453 -> 0 bytes B4A - Copy/Files/rojo.png | Bin 10751 -> 0 bytes B4A - Copy/Files/salma.jpg | Bin 17025 -> 0 bytes B4A - Copy/Files/salma.png | Bin 5896 -> 0 bytes B4A - Copy/Files/senial.jpg | Bin 40104 -> 0 bytes B4A - Copy/Files/sync.png | Bin 763 -> 0 bytes B4A - Copy/Files/tache_rojo.png | Bin 254546 -> 0 bytes B4A - Copy/Files/telefonos.bal | Bin 8011 -> 0 bytes B4A - Copy/Files/tiendita.jpg | Bin 9042 -> 0 bytes B4A - Copy/Files/unilever.jpg | Bin 6284 -> 0 bytes B4A - Copy/Files/verde.png | Bin 7665 -> 0 bytes B4A - Copy/FirebaseMessaging.bas | 253 -- B4A - Copy/ManageExternalStorage.bas | 79 - B4A - Copy/Starter.bas | 108 - B4A - Copy/Tracker.bas | 223 -- B4A - Copy/google-services.json | 155 - B4A - Copy/kms_helperSubs.bas | 545 ---- .../Backup Durakelo 2023-09-21 13.06.zip | Bin 1122584 -> 0 bytes .../Backup Durakelo 2023-09-21 13.49.zip | Bin 1124694 -> 0 bytes .../Backup Durakelo 2023-09-21 15.29.zip | Bin 1124677 -> 0 bytes .../Backup Durakelo 2023-09-21 16.40.zip | Bin 1127525 -> 0 bytes 388 files changed, 2 insertions(+), 9957 deletions(-) delete mode 100644 B4A - Copy/B4XMainPage.bas delete mode 100644 B4A - Copy/BatteryUtilities.bas delete mode 100644 B4A - Copy/C_Cliente.bas delete mode 100644 B4A - Copy/C_Clientes.bas delete mode 100644 B4A - Copy/C_Historico.bas delete mode 100644 B4A - Copy/C_Mapas.bas delete mode 100644 B4A - Copy/C_NoVenta.bas delete mode 100644 B4A - Copy/C_Nota.bas delete mode 100644 B4A - Copy/C_Principal.bas delete mode 100644 B4A - Copy/C_Productos.bas delete mode 100644 B4A - Copy/C_TicketsDia.bas delete mode 100644 B4A - Copy/C_updateAvailable.bas delete mode 100644 B4A - Copy/CameraExClass.bas delete mode 100644 B4A - Copy/DBRequestManager.bas delete mode 100644 B4A - Copy/Durakelo.b4a delete mode 100644 B4A - Copy/Durakelo.b4a.meta delete mode 100644 B4A - Copy/EscPosPrinter.bas delete mode 100644 B4A - Copy/Files/alcancia.png delete mode 100644 B4A - Copy/Files/alert2.png delete mode 100644 B4A - Copy/Files/alerta.jpg delete mode 100644 B4A - Copy/Files/alerta_amarilla.png delete mode 100644 B4A - Copy/Files/amarillo.png delete mode 100644 B4A - Copy/Files/anterior.jpg delete mode 100644 B4A - Copy/Files/buscar.bal delete mode 100644 B4A - Copy/Files/carrito.png delete mode 100644 B4A - Copy/Files/celltitle.bal delete mode 100644 B4A - Copy/Files/cliente.bal delete mode 100644 B4A - Copy/Files/clientes.bal delete mode 100644 B4A - Copy/Files/detalle_promo.bal delete mode 100644 B4A - Copy/Files/durakelo.png delete mode 100644 B4A - Copy/Files/durakelo1.png delete mode 100644 B4A - Copy/Files/durakelo_192x192.png delete mode 100644 B4A - Copy/Files/engrane.jpg delete mode 100644 B4A - Copy/Files/engrane3.png delete mode 100644 B4A - Copy/Files/espera.gif delete mode 100644 B4A - Copy/Files/fondo_kmt.jpg delete mode 100644 B4A - Copy/Files/foto.bal delete mode 100644 B4A - Copy/Files/guardagestion.bal delete mode 100644 B4A - Copy/Files/guna_viejo.png delete mode 100644 B4A - Copy/Files/historico.bal delete mode 100644 B4A - Copy/Files/infonavit1.jpg delete mode 100644 B4A - Copy/Files/itembuttonblue.png delete mode 100644 B4A - Copy/Files/k.png delete mode 100644 B4A - Copy/Files/kelloggs.png delete mode 100644 B4A - Copy/Files/keymon_logo.png delete mode 100644 B4A - Copy/Files/kmt.db delete mode 100644 B4A - Copy/Files/login.bal delete mode 100644 B4A - Copy/Files/logo sanfer.jpg delete mode 100644 B4A - Copy/Files/logo_exitus1.jpg delete mode 100644 B4A - Copy/Files/mainpage.bal delete mode 100644 B4A - Copy/Files/malo.jpg delete mode 100644 B4A - Copy/Files/mapa.bal delete mode 100644 B4A - Copy/Files/mapa_rutas.bal delete mode 100644 B4A - Copy/Files/marker-azul-0.png delete mode 100644 B4A - Copy/Files/marker-azul-1.png delete mode 100644 B4A - Copy/Files/marker-azul-10.png delete mode 100644 B4A - Copy/Files/marker-azul-100.png delete mode 100644 B4A - Copy/Files/marker-azul-11.png delete mode 100644 B4A - Copy/Files/marker-azul-12.png delete mode 100644 B4A - Copy/Files/marker-azul-13.png delete mode 100644 B4A - Copy/Files/marker-azul-14.png delete mode 100644 B4A - Copy/Files/marker-azul-15.png delete mode 100644 B4A - Copy/Files/marker-azul-16.png delete mode 100644 B4A - Copy/Files/marker-azul-17.png delete mode 100644 B4A - Copy/Files/marker-azul-18.png delete mode 100644 B4A - Copy/Files/marker-azul-19.png delete mode 100644 B4A - Copy/Files/marker-azul-2.png delete mode 100644 B4A - Copy/Files/marker-azul-20.png delete mode 100644 B4A - Copy/Files/marker-azul-21.png delete mode 100644 B4A - Copy/Files/marker-azul-22.png delete mode 100644 B4A - Copy/Files/marker-azul-23.png delete mode 100644 B4A - Copy/Files/marker-azul-24.png delete mode 100644 B4A - Copy/Files/marker-azul-25.png delete mode 100644 B4A - Copy/Files/marker-azul-26.png delete mode 100644 B4A - Copy/Files/marker-azul-27.png delete mode 100644 B4A - Copy/Files/marker-azul-28.png delete mode 100644 B4A - Copy/Files/marker-azul-29.png delete mode 100644 B4A - Copy/Files/marker-azul-3.png delete mode 100644 B4A - Copy/Files/marker-azul-30.png delete mode 100644 B4A - Copy/Files/marker-azul-31.png delete mode 100644 B4A - Copy/Files/marker-azul-32.png delete mode 100644 B4A - Copy/Files/marker-azul-33.png delete mode 100644 B4A - Copy/Files/marker-azul-34.png delete mode 100644 B4A - Copy/Files/marker-azul-35.png delete mode 100644 B4A - Copy/Files/marker-azul-36.png delete mode 100644 B4A - Copy/Files/marker-azul-37.png delete mode 100644 B4A - Copy/Files/marker-azul-38.png delete mode 100644 B4A - Copy/Files/marker-azul-39.png delete mode 100644 B4A - Copy/Files/marker-azul-4.png delete mode 100644 B4A - Copy/Files/marker-azul-40.png delete mode 100644 B4A - Copy/Files/marker-azul-41.png delete mode 100644 B4A - Copy/Files/marker-azul-42.png delete mode 100644 B4A - Copy/Files/marker-azul-43.png delete mode 100644 B4A - Copy/Files/marker-azul-44.png delete mode 100644 B4A - Copy/Files/marker-azul-45.png delete mode 100644 B4A - Copy/Files/marker-azul-46.png delete mode 100644 B4A - Copy/Files/marker-azul-47.png delete mode 100644 B4A - Copy/Files/marker-azul-48.png delete mode 100644 B4A - Copy/Files/marker-azul-49.png delete mode 100644 B4A - Copy/Files/marker-azul-5.png delete mode 100644 B4A - Copy/Files/marker-azul-50.png delete mode 100644 B4A - Copy/Files/marker-azul-51.png delete mode 100644 B4A - Copy/Files/marker-azul-52.png delete mode 100644 B4A - Copy/Files/marker-azul-53.png delete mode 100644 B4A - Copy/Files/marker-azul-54.png delete mode 100644 B4A - Copy/Files/marker-azul-55.png delete mode 100644 B4A - Copy/Files/marker-azul-56.png delete mode 100644 B4A - Copy/Files/marker-azul-57.png delete mode 100644 B4A - Copy/Files/marker-azul-58.png delete mode 100644 B4A - Copy/Files/marker-azul-59.png delete mode 100644 B4A - Copy/Files/marker-azul-6.png delete mode 100644 B4A - Copy/Files/marker-azul-60.png delete mode 100644 B4A - Copy/Files/marker-azul-61.png delete mode 100644 B4A - Copy/Files/marker-azul-62.png delete mode 100644 B4A - Copy/Files/marker-azul-63.png delete mode 100644 B4A - Copy/Files/marker-azul-64.png delete mode 100644 B4A - Copy/Files/marker-azul-65.png delete mode 100644 B4A - Copy/Files/marker-azul-66.png delete mode 100644 B4A - Copy/Files/marker-azul-67.png delete mode 100644 B4A - Copy/Files/marker-azul-68.png delete mode 100644 B4A - Copy/Files/marker-azul-69.png delete mode 100644 B4A - Copy/Files/marker-azul-7.png delete mode 100644 B4A - Copy/Files/marker-azul-70.png delete mode 100644 B4A - Copy/Files/marker-azul-71.png delete mode 100644 B4A - Copy/Files/marker-azul-72.png delete mode 100644 B4A - Copy/Files/marker-azul-73.png delete mode 100644 B4A - Copy/Files/marker-azul-74.png delete mode 100644 B4A - Copy/Files/marker-azul-75.png delete mode 100644 B4A - Copy/Files/marker-azul-76.png delete mode 100644 B4A - Copy/Files/marker-azul-77.png delete mode 100644 B4A - Copy/Files/marker-azul-78.png delete mode 100644 B4A - Copy/Files/marker-azul-79.png delete mode 100644 B4A - Copy/Files/marker-azul-8.png delete mode 100644 B4A - Copy/Files/marker-azul-80.png delete mode 100644 B4A - Copy/Files/marker-azul-81.png delete mode 100644 B4A - Copy/Files/marker-azul-82.png delete mode 100644 B4A - Copy/Files/marker-azul-83.png delete mode 100644 B4A - Copy/Files/marker-azul-84.png delete mode 100644 B4A - Copy/Files/marker-azul-85.png delete mode 100644 B4A - Copy/Files/marker-azul-86.png delete mode 100644 B4A - Copy/Files/marker-azul-87.png delete mode 100644 B4A - Copy/Files/marker-azul-88.png delete mode 100644 B4A - Copy/Files/marker-azul-89.png delete mode 100644 B4A - Copy/Files/marker-azul-9.png delete mode 100644 B4A - Copy/Files/marker-azul-90.png delete mode 100644 B4A - Copy/Files/marker-azul-91.png delete mode 100644 B4A - Copy/Files/marker-azul-92.png delete mode 100644 B4A - Copy/Files/marker-azul-93.png delete mode 100644 B4A - Copy/Files/marker-azul-94.png delete mode 100644 B4A - Copy/Files/marker-azul-95.png delete mode 100644 B4A - Copy/Files/marker-azul-96.png delete mode 100644 B4A - Copy/Files/marker-azul-97.png delete mode 100644 B4A - Copy/Files/marker-azul-98.png delete mode 100644 B4A - Copy/Files/marker-azul-99.png delete mode 100644 B4A - Copy/Files/marker-rojo-0.png delete mode 100644 B4A - Copy/Files/marker-rojo-1.png delete mode 100644 B4A - Copy/Files/marker-rojo-10.png delete mode 100644 B4A - Copy/Files/marker-rojo-100.png delete mode 100644 B4A - Copy/Files/marker-rojo-11.png delete mode 100644 B4A - Copy/Files/marker-rojo-12.png delete mode 100644 B4A - Copy/Files/marker-rojo-13.png delete mode 100644 B4A - Copy/Files/marker-rojo-14.png delete mode 100644 B4A - Copy/Files/marker-rojo-15.png delete mode 100644 B4A - Copy/Files/marker-rojo-16.png delete mode 100644 B4A - Copy/Files/marker-rojo-17.png delete mode 100644 B4A - Copy/Files/marker-rojo-18.png delete mode 100644 B4A - Copy/Files/marker-rojo-19.png delete mode 100644 B4A - Copy/Files/marker-rojo-2.png delete mode 100644 B4A - Copy/Files/marker-rojo-20.png delete mode 100644 B4A - Copy/Files/marker-rojo-21.png delete mode 100644 B4A - Copy/Files/marker-rojo-22.png delete mode 100644 B4A - Copy/Files/marker-rojo-23.png delete mode 100644 B4A - Copy/Files/marker-rojo-24.png delete mode 100644 B4A - Copy/Files/marker-rojo-25.png delete mode 100644 B4A - Copy/Files/marker-rojo-26.png delete mode 100644 B4A - Copy/Files/marker-rojo-27.png delete mode 100644 B4A - Copy/Files/marker-rojo-28.png delete mode 100644 B4A - Copy/Files/marker-rojo-29.png delete mode 100644 B4A - Copy/Files/marker-rojo-3.png delete mode 100644 B4A - Copy/Files/marker-rojo-30.png delete mode 100644 B4A - Copy/Files/marker-rojo-31.png delete mode 100644 B4A - Copy/Files/marker-rojo-32.png delete mode 100644 B4A - Copy/Files/marker-rojo-33.png delete mode 100644 B4A - Copy/Files/marker-rojo-34.png delete mode 100644 B4A - Copy/Files/marker-rojo-35.png delete mode 100644 B4A - Copy/Files/marker-rojo-36.png delete mode 100644 B4A - Copy/Files/marker-rojo-37.png delete mode 100644 B4A - Copy/Files/marker-rojo-38.png delete mode 100644 B4A - Copy/Files/marker-rojo-39.png delete mode 100644 B4A - Copy/Files/marker-rojo-4.png delete mode 100644 B4A - Copy/Files/marker-rojo-40.png delete mode 100644 B4A - Copy/Files/marker-rojo-41.png delete mode 100644 B4A - Copy/Files/marker-rojo-42.png delete mode 100644 B4A - Copy/Files/marker-rojo-43.png delete mode 100644 B4A - Copy/Files/marker-rojo-44.png delete mode 100644 B4A - Copy/Files/marker-rojo-45.png delete mode 100644 B4A - Copy/Files/marker-rojo-46.png delete mode 100644 B4A - Copy/Files/marker-rojo-47.png delete mode 100644 B4A - Copy/Files/marker-rojo-48.png delete mode 100644 B4A - Copy/Files/marker-rojo-49.png delete mode 100644 B4A - Copy/Files/marker-rojo-5.png delete mode 100644 B4A - Copy/Files/marker-rojo-50.png delete mode 100644 B4A - Copy/Files/marker-rojo-51.png delete mode 100644 B4A - Copy/Files/marker-rojo-52.png delete mode 100644 B4A - Copy/Files/marker-rojo-53.png delete mode 100644 B4A - Copy/Files/marker-rojo-54.png delete mode 100644 B4A - Copy/Files/marker-rojo-55.png delete mode 100644 B4A - Copy/Files/marker-rojo-56.png delete mode 100644 B4A - Copy/Files/marker-rojo-57.png delete mode 100644 B4A - Copy/Files/marker-rojo-58.png delete mode 100644 B4A - Copy/Files/marker-rojo-59.png delete mode 100644 B4A - Copy/Files/marker-rojo-6.png delete mode 100644 B4A - Copy/Files/marker-rojo-60.png delete mode 100644 B4A - Copy/Files/marker-rojo-61.png delete mode 100644 B4A - Copy/Files/marker-rojo-62.png delete mode 100644 B4A - Copy/Files/marker-rojo-63.png delete mode 100644 B4A - Copy/Files/marker-rojo-64.png delete mode 100644 B4A - Copy/Files/marker-rojo-65.png delete mode 100644 B4A - Copy/Files/marker-rojo-66.png delete mode 100644 B4A - Copy/Files/marker-rojo-67.png delete mode 100644 B4A - Copy/Files/marker-rojo-68.png delete mode 100644 B4A - Copy/Files/marker-rojo-69.png delete mode 100644 B4A - Copy/Files/marker-rojo-7.png delete mode 100644 B4A - Copy/Files/marker-rojo-70.png delete mode 100644 B4A - Copy/Files/marker-rojo-71.png delete mode 100644 B4A - Copy/Files/marker-rojo-72.png delete mode 100644 B4A - Copy/Files/marker-rojo-73.png delete mode 100644 B4A - Copy/Files/marker-rojo-74.png delete mode 100644 B4A - Copy/Files/marker-rojo-75.png delete mode 100644 B4A - Copy/Files/marker-rojo-76.png delete mode 100644 B4A - Copy/Files/marker-rojo-77.png delete mode 100644 B4A - Copy/Files/marker-rojo-78.png delete mode 100644 B4A - Copy/Files/marker-rojo-79.png delete mode 100644 B4A - Copy/Files/marker-rojo-8.png delete mode 100644 B4A - Copy/Files/marker-rojo-80.png delete mode 100644 B4A - Copy/Files/marker-rojo-81.png delete mode 100644 B4A - Copy/Files/marker-rojo-82.png delete mode 100644 B4A - Copy/Files/marker-rojo-83.png delete mode 100644 B4A - Copy/Files/marker-rojo-84.png delete mode 100644 B4A - Copy/Files/marker-rojo-85.png delete mode 100644 B4A - Copy/Files/marker-rojo-86.png delete mode 100644 B4A - Copy/Files/marker-rojo-87.png delete mode 100644 B4A - Copy/Files/marker-rojo-88.png delete mode 100644 B4A - Copy/Files/marker-rojo-89.png delete mode 100644 B4A - Copy/Files/marker-rojo-9.png delete mode 100644 B4A - Copy/Files/marker-rojo-90.png delete mode 100644 B4A - Copy/Files/marker-rojo-91.png delete mode 100644 B4A - Copy/Files/marker-rojo-92.png delete mode 100644 B4A - Copy/Files/marker-rojo-93.png delete mode 100644 B4A - Copy/Files/marker-rojo-94.png delete mode 100644 B4A - Copy/Files/marker-rojo-95.png delete mode 100644 B4A - Copy/Files/marker-rojo-96.png delete mode 100644 B4A - Copy/Files/marker-rojo-97.png delete mode 100644 B4A - Copy/Files/marker-rojo-98.png delete mode 100644 B4A - Copy/Files/marker-rojo-99.png delete mode 100644 B4A - Copy/Files/marker-verde-0.png delete mode 100644 B4A - Copy/Files/marker-verde-1.png delete mode 100644 B4A - Copy/Files/marker-verde-10.png delete mode 100644 B4A - Copy/Files/marker-verde-100.png delete mode 100644 B4A - Copy/Files/marker-verde-11.png delete mode 100644 B4A - Copy/Files/marker-verde-12.png delete mode 100644 B4A - Copy/Files/marker-verde-13.png delete mode 100644 B4A - Copy/Files/marker-verde-14.png delete mode 100644 B4A - Copy/Files/marker-verde-15.png delete mode 100644 B4A - Copy/Files/marker-verde-16.png delete mode 100644 B4A - Copy/Files/marker-verde-17.png delete mode 100644 B4A - Copy/Files/marker-verde-18.png delete mode 100644 B4A - Copy/Files/marker-verde-19.png delete mode 100644 B4A - Copy/Files/marker-verde-2.png delete mode 100644 B4A - Copy/Files/marker-verde-20.png delete mode 100644 B4A - Copy/Files/marker-verde-21.png delete mode 100644 B4A - Copy/Files/marker-verde-22.png delete mode 100644 B4A - Copy/Files/marker-verde-23.png delete mode 100644 B4A - Copy/Files/marker-verde-24.png delete mode 100644 B4A - Copy/Files/marker-verde-25.png delete mode 100644 B4A - Copy/Files/marker-verde-26.png delete mode 100644 B4A - Copy/Files/marker-verde-27.png delete mode 100644 B4A - Copy/Files/marker-verde-28.png delete mode 100644 B4A - Copy/Files/marker-verde-29.png delete mode 100644 B4A - Copy/Files/marker-verde-3.png delete mode 100644 B4A - Copy/Files/marker-verde-30.png delete mode 100644 B4A - Copy/Files/marker-verde-31.png delete mode 100644 B4A - Copy/Files/marker-verde-32.png delete mode 100644 B4A - Copy/Files/marker-verde-33.png delete mode 100644 B4A - Copy/Files/marker-verde-34.png delete mode 100644 B4A - Copy/Files/marker-verde-35.png delete mode 100644 B4A - Copy/Files/marker-verde-36.png delete mode 100644 B4A - Copy/Files/marker-verde-37.png delete mode 100644 B4A - Copy/Files/marker-verde-38.png delete mode 100644 B4A - Copy/Files/marker-verde-39.png delete mode 100644 B4A - Copy/Files/marker-verde-4.png delete mode 100644 B4A - Copy/Files/marker-verde-40.png delete mode 100644 B4A - Copy/Files/marker-verde-41.png delete mode 100644 B4A - Copy/Files/marker-verde-42.png delete mode 100644 B4A - Copy/Files/marker-verde-43.png delete mode 100644 B4A - Copy/Files/marker-verde-44.png delete mode 100644 B4A - Copy/Files/marker-verde-45.png delete mode 100644 B4A - Copy/Files/marker-verde-46.png delete mode 100644 B4A - Copy/Files/marker-verde-47.png delete mode 100644 B4A - Copy/Files/marker-verde-48.png delete mode 100644 B4A - Copy/Files/marker-verde-49.png delete mode 100644 B4A - Copy/Files/marker-verde-5.png delete mode 100644 B4A - Copy/Files/marker-verde-50.png delete mode 100644 B4A - Copy/Files/marker-verde-51.png delete mode 100644 B4A - Copy/Files/marker-verde-52.png delete mode 100644 B4A - Copy/Files/marker-verde-53.png delete mode 100644 B4A - Copy/Files/marker-verde-54.png delete mode 100644 B4A - Copy/Files/marker-verde-55.png delete mode 100644 B4A - Copy/Files/marker-verde-56.png delete mode 100644 B4A - Copy/Files/marker-verde-57.png delete mode 100644 B4A - Copy/Files/marker-verde-58.png delete mode 100644 B4A - Copy/Files/marker-verde-59.png delete mode 100644 B4A - Copy/Files/marker-verde-6.png delete mode 100644 B4A - Copy/Files/marker-verde-60.png delete mode 100644 B4A - Copy/Files/marker-verde-61.png delete mode 100644 B4A - Copy/Files/marker-verde-62.png delete mode 100644 B4A - Copy/Files/marker-verde-63.png delete mode 100644 B4A - Copy/Files/marker-verde-64.png delete mode 100644 B4A - Copy/Files/marker-verde-65.png delete mode 100644 B4A - Copy/Files/marker-verde-66.png delete mode 100644 B4A - Copy/Files/marker-verde-67.png delete mode 100644 B4A - Copy/Files/marker-verde-68.png delete mode 100644 B4A - Copy/Files/marker-verde-69.png delete mode 100644 B4A - Copy/Files/marker-verde-7.png delete mode 100644 B4A - Copy/Files/marker-verde-70.png delete mode 100644 B4A - Copy/Files/marker-verde-71.png delete mode 100644 B4A - Copy/Files/marker-verde-72.png delete mode 100644 B4A - Copy/Files/marker-verde-73.png delete mode 100644 B4A - Copy/Files/marker-verde-74.png delete mode 100644 B4A - Copy/Files/marker-verde-75.png delete mode 100644 B4A - Copy/Files/marker-verde-76.png delete mode 100644 B4A - Copy/Files/marker-verde-77.png delete mode 100644 B4A - Copy/Files/marker-verde-78.png delete mode 100644 B4A - Copy/Files/marker-verde-79.png delete mode 100644 B4A - Copy/Files/marker-verde-8.png delete mode 100644 B4A - Copy/Files/marker-verde-80.png delete mode 100644 B4A - Copy/Files/marker-verde-81.png delete mode 100644 B4A - Copy/Files/marker-verde-82.png delete mode 100644 B4A - Copy/Files/marker-verde-83.png delete mode 100644 B4A - Copy/Files/marker-verde-84.png delete mode 100644 B4A - Copy/Files/marker-verde-85.png delete mode 100644 B4A - Copy/Files/marker-verde-86.png delete mode 100644 B4A - Copy/Files/marker-verde-87.png delete mode 100644 B4A - Copy/Files/marker-verde-88.png delete mode 100644 B4A - Copy/Files/marker-verde-89.png delete mode 100644 B4A - Copy/Files/marker-verde-9.png delete mode 100644 B4A - Copy/Files/marker-verde-90.png delete mode 100644 B4A - Copy/Files/marker-verde-91.png delete mode 100644 B4A - Copy/Files/marker-verde-92.png delete mode 100644 B4A - Copy/Files/marker-verde-93.png delete mode 100644 B4A - Copy/Files/marker-verde-94.png delete mode 100644 B4A - Copy/Files/marker-verde-95.png delete mode 100644 B4A - Copy/Files/marker-verde-96.png delete mode 100644 B4A - Copy/Files/marker-verde-97.png delete mode 100644 B4A - Copy/Files/marker-verde-98.png delete mode 100644 B4A - Copy/Files/marker-verde-99.png delete mode 100644 B4A - Copy/Files/noventa.bal delete mode 100644 B4A - Copy/Files/nuevocliente.bal delete mode 100644 B4A - Copy/Files/palomita_verde.png delete mode 100644 B4A - Copy/Files/pedido.bal delete mode 100644 B4A - Copy/Files/planfia_logo.png delete mode 100644 B4A - Copy/Files/planfia_logo_old.png delete mode 100644 B4A - Copy/Files/planfia_logo_old2.png delete mode 100644 B4A - Copy/Files/principal.bal delete mode 100644 B4A - Copy/Files/productos.bal delete mode 100644 B4A - Copy/Files/qr.bal delete mode 100644 B4A - Copy/Files/rechazo.jpg delete mode 100644 B4A - Copy/Files/rojo.png delete mode 100644 B4A - Copy/Files/salma.jpg delete mode 100644 B4A - Copy/Files/salma.png delete mode 100644 B4A - Copy/Files/senial.jpg delete mode 100644 B4A - Copy/Files/sync.png delete mode 100644 B4A - Copy/Files/tache_rojo.png delete mode 100644 B4A - Copy/Files/telefonos.bal delete mode 100644 B4A - Copy/Files/tiendita.jpg delete mode 100644 B4A - Copy/Files/unilever.jpg delete mode 100644 B4A - Copy/Files/verde.png delete mode 100644 B4A - Copy/FirebaseMessaging.bas delete mode 100644 B4A - Copy/ManageExternalStorage.bas delete mode 100644 B4A - Copy/Starter.bas delete mode 100644 B4A - Copy/Tracker.bas delete mode 100644 B4A - Copy/google-services.json delete mode 100644 B4A - Copy/kms_helperSubs.bas delete mode 100644 B4A/AutoBackups/Backup Durakelo 2023-09-21 13.06.zip delete mode 100644 B4A/AutoBackups/Backup Durakelo 2023-09-21 13.49.zip delete mode 100644 B4A/AutoBackups/Backup Durakelo 2023-09-21 15.29.zip delete mode 100644 B4A/AutoBackups/Backup Durakelo 2023-09-21 16.40.zip diff --git a/.gitignore b/.gitignore index af94e9d..44a1d70 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ **/Objects -**/AutoBackups \ No newline at end of file +**/AutoBackups +*/AutoBackups \ No newline at end of file diff --git a/B4A - Copy/B4XMainPage.bas b/B4A - Copy/B4XMainPage.bas deleted file mode 100644 index ec19c44..0000000 --- a/B4A - Copy/B4XMainPage.bas +++ /dev/null @@ -1,530 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=9.85 -@EndOfDesignText@ -#Region Shared Files - 'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True - 'Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=Project.zip - '########################################################################################################### - '###################### PULL ############################################################# - 'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=git&Args=pull - '########################################################################################################### - '###################### PUSH ############################################################# - 'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=github&Args=..\..\ - '########################################################################################################### - '###################### PUSH TORTOISE GIT ######################################################### - 'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=TortoiseGitProc&Args=/command:commit&Args=/path:"./../../"&Args=/closeonend:2 - '########################################################################################################### -#End Region - -Sub Class_Globals - Private Root As B4XView - Private xui As XUI - Public login As B4XMainPage - Dim rp As RuntimePermissions - Public principal As C_Principal 'Antes seleccion - Public clientes As C_Clientes 'Antes Colonia - Public cliente As C_Cliente 'Antes fila -' Public productos As C_Productos 'Antes colonia2 -' Public updateAvailable As C_updateAvailable -'' Public mapas As C_Mapas -'' Public nuevoCliente As C_NuevoCliente -' Public ticketsDia As C_TicketsDia 'Antes buscar - Public noVenta As C_NoVenta 'Antes nopago - Public nota As C_Nota 'Antes tarjeta -' Public promos As C_Promos - Public historico As C_Historico 'Antes historico - - Dim reqManager As DBRequestManager - Dim ultimaActualizacionGPS As String = 235959 - Dim almacen, ruta As String - Dim user As EditText - Dim pass As EditText - Dim c As Cursor - Dim D As Cursor - Dim existe As String - Dim paso1 As String - Dim IMEI As String - Dim alterno As String - Private b_menu As Button -' Dim PopupMenu As RSPopupMenu - Dim cmd As DBCommand - - Private IMEN As EditText - Private Entrar As Button - Private Panel1 As Panel - Private ImageView4 As ImageView - Private E_SERVER As EditText - Private B_SERVER As Button - Private B_MACIMP As Button - Private CUANTOS As String - Private foto_g () As Byte - - Private ListView1 As ListView - Private ImageView1 As ImageView - Private Label1 As Label - Private B_BorrarFinDia As Button - Private b_fdCancelar As Button - Private b_findiaOk As Button - Private p_finDia As Panel - Private et_autSup As EditText - - 'prueba downloadfile - Dim ProgressBar1 As ProgressBar - Dim Label1 As Label - Dim btnDownload As Button - Dim btnCancel As Button - Private p_download As Panel - Private Label6 As Label - Dim logger As Boolean = True - - Dim lat_gps, lon_gps As String - Dim tipo_venta As String - Dim bTerminarClicked As Boolean = False - Private lv_server As ListView - Private l_server As Label - Public rutaBDBackup As String = "" - Private b_envioBD As Button - Dim kh As kms_helperSubs - Private p_login As Panel - Private l_version As Label -End Sub - -Public Sub Initialize - B4XPages.GetManager.LogEvents = True - #if not(DEBUG) - Starter.logger = False - #end if -End Sub - -'This event will be called once, before the page becomes visible. -Private Sub B4XPage_Created (Root1 As B4XView) - If Not(Starter.Logger) Then logger = False - Root = Root1 -' Root.LoadLayout("MainPage") - Root.LoadLayout("login") - B4XPages.SetTitle(Me, "Durakelo") - login.Initialize - B4XPages.AddPage("Login", login) - principal.Initialize - B4XPages.AddPage("Principal", principal) - clientes.Initialize - B4XPages.AddPage("Clientes", clientes) - cliente.Initialize - B4XPages.AddPageAndCreate("Cliente", cliente) -' productos.Initialize -' B4XPages.AddPage("Productos", productos) -' updateAvailable.Initialize -' B4XPages.AddPage("updateAvailable", updateAvailable) -' mapas.Initialize -' B4XPages.AddPage("Mapas", mapas) -' nuevoCliente.Initialize -' B4XPages.AddPageAndCreate("NuevoCliente", nuevoCliente) -' ticketsDia.Initialize -' B4XPages.AddPage("TicketsDia", ticketsDia) - noVenta.Initialize - B4XPages.AddPage("NoVenta", noVenta) - nota.Initialize - B4XPages.AddPage("Nota", nota) -' pedidos.Initialize -' B4XPages.AddPage("Pedidos", pedidos) -' promos.Initialize -' B4XPages.AddPage("Promos", promos) - historico.Initialize - B4XPages.AddPage("Historico", historico) -' checklist.Initialize -' B4XPages.AddPage("CheckList", checklist) -' ruta = Starter.ruta - ruta = File.DirInternal - kh.Initialize(Me, "kh") -' If(FirstTime) Then -' g.Initialize("GPS") -' End If - ' se crea o no el archivo de la base de ddatos de kmt - 'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE - 'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA - 'SI SE REGRESA A ESTE ACTIVIDAD. -' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) -' Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - kh.guardaAppInfo(Starter.skmt) - Dim sDate, sTime As String - DateTime.DateFormat = "yyyyMMdd" - sDate=DateTime.Date(DateTime.Now) - - Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS PEDIDO3") -' skmt.ExecNonQuery("DROP VIEW TOTAL_MARCAS") - - Starter.skmt.ExecNonQuery("CREATE VIEW IF NOT EXISTS CATALOGO AS Select CAT_GP_CLASIF, CAT_GP_ID FROM CAT_GUNAPROD UNION Select CAT_GP_CLASIF, CAT_GP_ID FROM CAT_GUNAPROD2 GROUP BY CAT_GP_CLASIF, CAT_GP_ID") - Starter.skmt.ExecNonQuery("create view IF NOT EXISTS total_marcas AS Select cat_gp_clasif, sum(pe_costo_tot) As total from CATALOGO, pedido where pe_proid = cat_gp_id And pe_cliente <> 0 group by cat_gp_clasif") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_EXHIBIDORES (CAT_EX_ID TEXT, CAT_EX_TIPO TEXT, CAT_EX_VALOR TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE PEDIDO3 (PE_PRECIO2 TEXT,PE_TIPO TEXT,PE_FOLIO NUMERIC,PE_DESC NUMERIC,PE_COSTO_SIN TEXT,PE_RUTA TEXT,PE_CEDIS TEXT,PE_COSTO_TOT NUMERIC,PE_COSTOU NUMERIC,PE_CANT NUMERIC,PE_PRONOMBRE TEXT,PE_PROID TEXT,PE_CLIENTE TEXT,PE_FECHA TEXT,PE_USUARIO TEXT)") - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTA_GPS(FECHA INTEGER, LAT TEXT, LON TEXT)") - If sDate = "20190523" Then - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER")) - - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",Starter.skmt)) - End If - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA (HE_CLIE TEXT, HE_RES TEXT, HE_FECHA TEXT, HE_TIPO TEXT)") - - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA2 (HE_CLIE TEXT, HE_RES TEXT, HE_FECHA TEXT, HE_TIPO TEXT, HE_PRECIO TEXT)") - - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_ENCUESTA_PREGUNTA (CAT_EP_ID TEXT,CAT_EP_IDTIPOPREGUNTA TEXT,CAT_CE_DESCRIPCION TEXT,CAT_EP_PREGUNTA TEXT,CAT_EP_RES1_PRED TEXT,CAT_EP_RES2_PRED TEXT,CAT_EP_RES3_PRED TEXT,CAT_EP_ORDEN_PREGUNTA TEXT)") - - Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_ENCUESTA_PREGUNTA5P (CAT_EP_ID TEXT,CAT_EP_IDTIPOPREGUNTA TEXT,CAT_CE_DESCRIPCION TEXT,CAT_EP_PREGUNTA TEXT,CAT_EP_RES1_PRED TEXT,CAT_EP_RES2_PRED TEXT,CAT_EP_RES3_PRED TEXT,CAT_EP_ORDEN_PREGUNTA TEXT)") - - c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",Starter.DBReqServer)) - Else - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - Starter.DBReqServer = c.GetString("CAT_VA_VALOR") - End If - Dim P As PhoneId - 'user.Text = P.GetDeviceId - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - If Result Then - Dim P As PhoneId - 'user.Text = P.GetDeviceId - IMEI = P.GetDeviceId - IMEI = "" - Else - If logger Then Log("Sin permisos para leer los datos del celular") - End If - - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - If Result Then - StartService(Tracker) - Log("Start Tracker") - End If - p_login.Height = Root.Height - p_login.Width = Root.Width - -End Sub - -Sub B4XPage_Appear - l_version.Text = Application.VersionName -' copiaDB -' server = "http://10.0.0.205:1782" - - reqManager.Initialize(Me, Starter.DBReqServer) - Log(Starter.DBReqServer) -' If g.GPSEnabled=False Then - ' ToastMessageShow("Habilitar el GPS", True) - ' StartActivity(g.LocationSettingsIntent) - ' Else - ' g.Start(0,0) - ' End If -' user.Text ="GPS" - c = Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - cmd.Initialize - cmd.Name = "select_fechat" - reqManager.ExecuteQuery(cmd , 0, "fecha") - - 'Msgbox("AJUSTAR FECHA","AVISO") - B4XPage_Appear - Else - c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA")) - c.Position =0 - Dim sDate,sTime As String - - DateTime.dateFormat = "yyyyMMddHHmm" - sDate=DateTime.Date(DateTime.Now) - - 'Msgbox("aaa"& sDate,"aviso") - If c.GetString("CAT_VA_VALOR") > sDate & sTime Then -' Msgbox("AJUSTAR LA FECHA YA QUE ES MENOR AL SISTEMA " & " "& c.GetString("CAT_VA_VALOR") & " " & sDate & sTime ,"AVISO") - DateTime.TimeFormat = "MM/dd/yyyyHH:mm:ss" - B4XPage_Appear - End If - DateTime.TimeFormat = "MM/dd/yyyyHH:mm:ss" - End If - c.Close - c = Starter.skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("CODIGO")) - c.Position =0 - CUANTOS = c.GetString("CUANTOS") - c.Close - If CUANTOS > 0 Then - c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("CODIGO")) - c.Position =0 - If c.GetString("CAT_VA_VALOR") = "743" Then - Entrar.Visible = True - End If - c.Close - Else - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CODIGO","0")) - End If - - c=Starter.skmt.ExecQuery2("select COUNT(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0")) - End If - - c=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS FROM VERSION") - c.Position= 0 - - If c.GetString("CUANTOS") = 0 Then - Starter.skmt.ExecNonQuery("delete from VERSION") - Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object ("2.6")) - End If - c.Close - - c=Starter.skmt.ExecQuery("select NOVERSION FROM VERSION") - c.Position = 0 - - If c.GetString("NOVERSION") <> "2.6" Then -' Msgbox("VERSION INCORRECTA SOLICITAR O DESCARGAR LA NUEVA","ALERTA") - B4XPage_Appear - End If - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - If Result Then - StartService(Tracker) - If logger Then Log("Start Tracker") - Else - ToastMessageShow("No permission", True) - End If - Starter.usuario = kh.traeUsuarioDeDB(Starter.skmt) -' dameUsuario 'Obtenemos el usuario registrado - CallSubDelayed(FirebaseMessaging, "SubscribeToTopics") -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. - -Sub Entrar_Click - If user.Text = "ROOT" Then - Starter.skmt.ExecNonQuery("delete from usuarioa") - Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text)) - - Starter.skmt.ExecNonQuery("delete from cat_almacen") - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (pass.Text)) - B4XPages.ShowPage("Principal") - End If - - c=Starter.skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text)) - c.Position=0 - existe = c.GetString("EXISTE1") - - 'existe = 1 - If existe = 0 Then - 'skmt.ExecNonQuery("delete from usuarioa") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_usuario_guna_DUR" - cmd.Parameters = Array As Object(user.Text, pass.Text) - reqManager.ExecuteQuery(cmd , 0, "usuario") - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_version_DUR" - reqManager.ExecuteQuery(cmd , 0, "version") - Else - B4XPages.ShowPage("Principal") - End If - -End Sub - -Sub JobDone(Job As HttpJob) - If Job.Success = False Then - ToastMessageShow("Error: " & Job.ErrorMessage, True) - Else - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "version" Then 'query tag - For Each records() As Object In result.Rows - Starter.skmt.ExecNonQuery("delete from VERSION") - Dim CAT_VE_VERSION As String = records(result.Columns.Get("CAT_VE_VERSION")) - Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION)) - If CAT_VE_VERSION <> "2.6" Then - Msgbox("VERSION INCORRECTA SOLICITAR O DESCARGAR LA NUEVA","ALERTA") - B4XPage_Appear - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "agencia" Then 'query tag - For Each records() As Object In result.Rows - Dim ID_ALMACEN As String = records(result.Columns.Get("ID_ALMACEN")) - Next - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "fecha" Then 'query tag - For Each records() As Object In result.Rows - Dim FECHA_HOY As String = records(result.Columns.Get("FECHA")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",FECHA_HOY)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim result As DBResult = reqManager.HandleJob(Job) - If result.Tag = "usuario" Then 'query tag - For Each records() As Object In result.Rows - Dim name As String = records(result.Columns.Get("USUARIO")) - Dim ID_ALMACEN As String = records(result.Columns.Get("CAT_LO_AGENCIA")) -' Dim IMEI_BASE As String = records(result.Columns.Get("CAT_LO_IDTELEFONO")) - Next - paso1 = 1 - End If - End If - Job.Release - End If - - If paso1 =1 Then - If name = "OKActivo" & IMEI Then - Starter.skmt.ExecNonQuery("delete from usuarioa") - Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text)) - Starter.skmt.ExecNonQuery("delete from cat_almacen") - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (ID_ALMACEN)) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",0)) - B4XPages.ShowPage("Principal") - Else If name = "OKExpirado"& IMEI Then - Msgbox("Usuario Expirado llamar al administrador","") - Else If name = "OKCancelado"& IMEI Then - Msgbox("Usuario Cancelado llamar al administrador","") - Else - Msgbox("Usuario o password No validos","") - End If - paso1 = 0 - End If -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True - 'StartActivity(Main) - ExitApplication - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - If user.text = "GPS" Then - 'user.Text=Location1.ConvertToMinutes(Location1.Latitude) - 'pass.text=Location1.ConvertToMinutes(Location1.Longitude) - user.Text=Location1.Latitude - pass.text=Location1.Longitude - 'btnTakePicture.Enabled = True - 's.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE,HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, lat_gps, lon_gps)) - End If -End Sub - -Sub PopupMenu_MenuItemClick (ItemId As Int) As Boolean - ToastMessageShow("Item " & ItemId & " clicked.", False) - Return False -End Sub - -Sub PDF_Click - -End Sub - -Sub user_EnterPressed - If user.Text = "CODIGO" Then - IMEN.Visible = True - user.Text = "" - End If -End Sub - -Sub ImageView4_Click - Entrar.Visible = False - ListView1.Clear - Dim Label1 As Label - Label1 = ListView1.SingleLineLayout.Label - Label1.TextSize = 20 - Label1.TextColor = Colors.Black - ListView1.AddSingleLine(Starter.DBReqServer) - - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - E_SERVER.text = c.GetString("CAT_VA_VALOR") -' Panel1.Visible = True - kh.panelVisible(Panel1, 0, 0) -End Sub - -Sub B_SERVER_Click - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",E_SERVER.text)) - reqManager.Initialize(Me, E_SERVER.text.trim) - Starter.DBReqServer = E_SERVER.text.trim - Panel1.Visible = False - Entrar.Visible = True -End Sub - -Sub B_FECHA_Click - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0")) - Panel1.Visible = False -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - E_SERVER.text = Value -End Sub - -Sub B_IMPRESORA_Click - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0")) - Panel1.Visible = False -End Sub - -Sub dameUsuario - c=Starter.skmt.ExecQuery("select count(*) as EXISTE1 from usuarioa") - c.Position=0 - existe = c.GetString("EXISTE1") - c.Close - If existe > 0 Then - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - Starter.usuario = c.GetString("USUARIO") - Else - Starter.usuario = "SINUSUARIO" - End If -End Sub - -'Copia la base de datos del almacenamiento interno al externo en el directorio kmts -Sub copiaDB - Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) - Wait For Activity_PermissionResult (Permission As String, Result As Boolean) - If Result Then - Dim theDir As String - Try - File.MakeDir(File.DirRootExternal,"kmts") - theDir = "/kmts" - Catch - theDir = "" - End Try - Try - File.Copy(File.DirInternal,"kmt.db",File.DirRootExternal&theDir,"dura_kmt.db") - ToastMessageShow("Listo, copiada a " & File.DirRootExternal&theDir & "/dura_kmt.db", False) - LogColor("copiado", Colors.red) - Catch - ToastMessageShow("No se pudo hacer la copia: "&LastException, True) - LogColor("no copiado", Colors.red) - End Try -' Log("rootExternal="&p) -' Log("File.DirInternal="&File.DirInternal) -' Log("File.DirRootExternal="&File.DirRootExternal) - Else - ToastMessageShow("Sin permisos", True) - End If -End Sub diff --git a/B4A - Copy/BatteryUtilities.bas b/B4A - Copy/BatteryUtilities.bas deleted file mode 100644 index ebb4448..0000000 --- a/B4A - Copy/BatteryUtilities.bas +++ /dev/null @@ -1,126 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=10.2 -@EndOfDesignText@ -'Class module -Sub Class_Globals - Private nativeMe As JavaObject - -End Sub -'Initializes the object. -Public Sub Initialize - nativeMe = Me -End Sub -'Return information about the battery status. It returns the following 11 values in an integer Array: -'EXTRA_LEVEL = current battery level, from 0 To EXTRA_SCALE. -'EXTRA_SCALE = the maximum battery level possible. -'EXTRA_HEALTH = the current health constant. -'EXTRA_ICON_SMALL = the resource ID of a small status bar icon indicating the current battery state. -'EXTRA_PLUGGED = whether the device is plugged into a Power source; 0 means it is on battery, other constants are different types of Power sources. -'EXTRA_STATUS = the current status constant. -'EXTRA_TEMPERATURE = the current battery temperature. -'EXTRA_VOLTAGE = the current battery voltage level. -'A value indicating if the battery is being charged or fully charged (If neither it returns 0 Else it returns 1) -'A value indicating if it is charging via USB (0 = Not USB, 2 = USB) -'A value indicating if it is charging via AC (0 = Not AC, 1 = AC) -Public Sub getBatteryInformation () As Int() - - Dim batteryInfo(11) As Int - batteryInfo = nativeMe.RunMethod("getBatteryInformation",Null) - Return batteryInfo - -End Sub - -Public Sub getBatteryTechnolgy() As String - - Dim batterytech As String - batterytech = nativeMe.RunMethod("getBatteryTechnology",Null) - Return batterytech - -End Sub - - - -#If Java - -import android.os.BatteryManager; -import android.os.Bundle; -import android.app.Activity; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; - - public int[] getBatteryInformation() { - - int[] mybat = new int[11]; - - Intent batteryIntent = ba.context.getApplicationContext().registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); - - int level = batteryIntent.getIntExtra(BatteryManager.EXTRA_LEVEL, -1); - mybat[0] = level; - int scale = batteryIntent.getIntExtra(BatteryManager.EXTRA_SCALE, -1); - mybat[1] = scale; - int health = batteryIntent.getIntExtra(BatteryManager.EXTRA_HEALTH,-1); - mybat[2] = health; - int icon_small = batteryIntent.getIntExtra(BatteryManager.EXTRA_ICON_SMALL,-1); - mybat[3] = icon_small; - int plugged = batteryIntent.getIntExtra(BatteryManager.EXTRA_PLUGGED,-1); - mybat[4] = plugged; -// boolean present = batteryIntent.getExtras().getBoolean(BatteryManager.EXTRA_PRESENT); - int status = batteryIntent.getIntExtra(BatteryManager.EXTRA_STATUS,-1); - mybat[5] = status; -// String technology = batteryIntent.getExtras().getString(BatteryManager.EXTRA_TECHNOLOGY); -// BA.Log("Technology = " + technology); - int temperature = batteryIntent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE,-1); - mybat[6] = temperature; - int voltage = batteryIntent.getIntExtra(BatteryManager.EXTRA_VOLTAGE,-1); - mybat[7] = voltage; -// int ac = batteryIntent.getIntExtra("plugged",BatteryManager.BATTERY_PLUGGED_AC); -// mybat[8] = ac; -// int usb = batteryIntent.getIntExtra("plugged",BatteryManager.BATTERY_PLUGGED_USB); -// mybat[9] = usb; - - boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING || - status == BatteryManager.BATTERY_STATUS_FULL; - mybat[8] = 0; - if (isCharging == true) { - mybat[8] = 1; - } - - // How are we charging? - mybat[9] = 0; - mybat[10] = 0; - int chargePlug = batteryIntent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1); - boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB; - if (usbCharge == true) { - mybat[9] = 2; - } - - boolean acCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC; - if (acCharge == true) { - mybat[10] = 1; - } - - return mybat; - } - - - public String getBatteryTechnology() { - - Intent batteryIntent = ba.context.getApplicationContext().registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); - - String technology = batteryIntent.getExtras().getString(BatteryManager.EXTRA_TECHNOLOGY); - - return technology; - } - - - - - - - -#End If \ No newline at end of file diff --git a/B4A - Copy/C_Cliente.bas b/B4A - Copy/C_Cliente.bas deleted file mode 100644 index f1f93f2..0000000 --- a/B4A - Copy/C_Cliente.bas +++ /dev/null @@ -1,1202 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - Dim g As GPS - Dim ruta As String - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String - Dim total_cliente As String - Dim m_lat As String - Dim m_lon As String - Dim btAdmin As BluetoothAdmin - Dim cmp20 As Serial - 'Dim printer As TextWriter - Dim PairedDevices As Map - Dim L As List - Dim TAMANO As Int - Dim ESPACIO As Int - Dim BLANCO As String - Dim cuenta As String -' Dim tipov As String - Dim Printer1 As EscPosPrinter -' Dim MAC_IMPRESORA As String - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - - Dim c As Cursor - Dim s As Cursor - Dim c2 As Cursor - Dim E1 As Cursor - Dim ListView1 As ListView - Dim la_cuenta As Label - Dim La_nombre As Label - Dim la_Calle As Label - Dim la_numero As Label - Dim la_nint As Label - Dim la_edo As Label - Dim la_pob As Label - Dim la_col As Label - Dim la_cp As Label - Dim la_zona As Label - Dim gest As Button - Dim la_saldotot As Label - Dim la_saldooper As Label - - Dim Tels As Button - Dim Label10 As Label - Dim Label11 As Label - - Dim Tar As Button - - Dim la_comm As Label - Dim la_actdte As Label - Dim la_usuario As Label - Dim la_resultado As Label - Dim l_entre1 As Label - Dim l_entre2 As Label - Dim l_atiende As Label - Dim l_atiende2 As Label - Dim DATOS As Button - Dim Guardar As Button - Dim NUEVO As Button - ' Dim lat_gps, lon_gps As String - - Dim l_total As Label - Dim c2 As Cursor - Dim S2 As Cursor - Private s As Cursor - Dim res As String - Private HIST As Button - Private MONTO_COMPRA As String - Private META As String - Private META2 As String - Private VERIFICA As String - Private L_QR As Label - Private BT_QR As Button - Private qr As QRCode - Dim sc As Zxing_scanner - Dim CODIGO As String - - Private b_mapa As Button - Dim CUANTOS As String - Private B_IMP As Button -' Dim Toggla As Toggle - Private B_VENTA As Button - Dim PASA_IMP As String - Dim sucursal As String - Dim FACTURA As String - Dim CREDITO As String - Private b_factura As Button - Dim perfil As String - Private CH_TA As CheckBox - Private CH_TC As CheckBox - Private CH_TB As CheckBox - Private CH_TD As CheckBox - Private E_CUANTOS_E As EditText - Private B_GUARDAR As Button - Private TIPOEX As String - Private B_EXIBI As Button - Private Panel1 As Panel - - Dim t3 As Timer - Private B_INV As Button - Private B_IMP2 As Button - - Dim id_encuesta As String - Dim LLAMAR_FOTO As String - Dim CURSOR_FOTO As Int - Dim TOMAR_FOTO As String - Private Panel10 As Panel - Private l_chk_e As Label - Private Chk_1 As CheckBox - Private chk_2 As CheckBox - Private chk_3 As CheckBox - Private b_chk_e As Button - - Private chk_1_valor As String - Private chk_2_valor As String - Private chk_3_valor As String - Private t_tenc As Label - Private E_RES_E As EditText - Private B_E_NEXT As Button - Private Panel9 As Panel - Private Label26 As Label - Dim impresoraConectada As Boolean = False - Dim printer As TextWriter -End Sub - -Sub initialize - -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - 'Do not forget to load the layout file created with the visual designer. For example: - 'Activity.LoadLayout("Layout1") - Root = Root1 - Root.RemoveAllViews - Root.LoadLayout("Cliente") - c=Starter.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_BFACTURA,CAT_CL_BCREDITO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - s=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - If c.RowCount > 0 Then - c.Position = 0 - la_cuenta.Text = c.GetString("CAT_CL_CODIGO") - cuenta = c.GetString("CAT_CL_CODIGO") - La_nombre.Text = c.GetString("CAT_CL_NOMBRE") - la_Calle.Text = c.GetString("CAT_CL_CALLE") & c.GetString("CAT_CL_NOEXT") - la_col.Text = c.GetString("CAT_CL_COLONIA") - la_edo.Text = c.GetString("CAT_CL_EDO") - la_cp.Text = c.GetString("CAT_CL_CP") - l_entre1.Text = c.GetString("CAT_CL_CALLE1") - l_entre2.Text = c.GetString("CAT_CL_CALLE2") - l_atiende.Text = c.GetString("CAT_CL_ATIENDE1") - l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2") - la_saldotot.Text = c.GetString("CAT_CL_TELEFONO") - la_saldooper.Text = c.GetString("CAT_CL_EMAIL") - MONTO_COMPRA = c.GetString("CAT_CL_MTOCOMPRA") - FACTURA = c.GetString("CAT_CL_BFACTURA") - CREDITO = c.GetString("CAT_CL_BCREDITO") - End If - If s.RowCount > 0 Then - s.Position = 0 - l_total.Text = s.GetString("TOTAL_CLIE") - total_cliente = s.GetString("TOTAL_CLIE") - End If - c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP")) - If c.RowCount > 0 Then - c.Position = 0 - Starter.MAC_IMPRESORA = c.GetString("CAT_VA_VALOR") - End If - If Starter.MAC_IMPRESORA = "" Then Starter.MAC_IMPRESORA = "0" - Log("|" & Starter.MAC_IMPRESORA & "|") - Printer1.Initialize(Me, "Printer1") - - TOMAR_FOTO = 0 - g.Initialize("GPS") - Panel1.Top = La_nombre.Top + La_nombre.Height + 5 : Panel1.left = 0 - Panel9.Top = La_nombre.Top + La_nombre.Height + 5 : Panel9.left = 0 - Panel10.Top = La_nombre.Top + La_nombre.Height + 5 : Panel10.left = 0 -End Sub - -Sub B4XPage_Appear - BT_QR.Enabled = False - b_factura.Visible = False - FACTURA =0 - If g.GPSEnabled=False Then - ToastMessageShow("Habilitar el GPS", True) - StartActivity(g.LocationSettingsIntent) - Else - g.Start(0,0) - End If - c=Starter.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - s=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - s.Position=0 - - c.Position=0 - la_cuenta.Text = c.GetString("CAT_CL_CODIGO") - La_nombre.Text = c.GetString("CAT_CL_NOMBRE") - la_Calle.Text = c.GetString("CAT_CL_CALLE") & " " & c.GetString("CAT_CL_NOEXT") - la_col.Text = c.GetString("CAT_CL_COLONIA") - la_edo.Text = c.GetString("CAT_CL_EDO") - la_cp.Text = c.GetString("CAT_CL_CP") - l_entre1.Text = c.GetString("CAT_CL_CALLE1") - l_entre2.Text = c.GetString("CAT_CL_CALLE2") - l_atiende.Text = c.GetString("CAT_CL_ATIENDE1") - l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2") - 'la_saldotot.Text = c.GetString("CAT_CL_TELEFONO") - 'la_saldooper.Text = c.GetString("CAT_CL_EMAIL") - l_total.Text = s.GetString("TOTAL_CLIE") - total_cliente = s.GetString("TOTAL_CLIE") - m_lat =c.GetString("CAT_CL_LAT") - m_lon =c.GetString("CAT_CL_LONG") - FACTURA = c.GetString("CAT_CL_BFACTURA") - CREDITO = c.GetString("CAT_CL_BCREDITO") - - If l_total.Text <> Null Then - - If la_cuenta.Text.Contains("N") = True Then - FACTURA = 0 - End If - - If FACTURA = "1" Then - b_factura.Visible = True - - End If - End If - - If CREDITO = "1" Then - Msgbox("ALTO","Este cliente no se le puede vender ya que tienen adeudo en su crédito") - B_VENTA.Visible = False - gest.Visible = False - Else - B_VENTA.Visible = True - gest.Visible = True - - End If - - If c.GetString("CAT_CL_NUM_SERIEFISICO") = "0" Then - L_QR.Visible = True - Else - L_QR.Visible = False - End If - S2=Starter.skmt.ExecQuery("select count(*) AS CUANTOS from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)") - S2.Position =0 - CUANTOS = S2.GetString("CUANTOS") - S2.Close - If CUANTOS > 0 Then - c2=Starter.skmt.ExecQuery("select sum(HVD_COSTO_TOT) AS TOTAL from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)") - c2.Position =0 - MONTO_COMPRA = c2.GetString("TOTAL") - c2.Close - Else - MONTO_COMPRA = "0" - End If - - la_saldotot.Text = MONTO_COMPRA - If MONTO_COMPRA <> "0" Then - META2 = 300 - MONTO_COMPRA - Else - META2 = 300 - End If - If META2 < 1 Then - META2 = "CUBIERTO" - End If - la_saldooper.Text = META2 - - If Printer1.IsConnected = False Then - Printer1.Connect - Else - Printer1.DisConnect - Printer1.Connect - End If - If PASA_IMP = "1" Then - B_IMP.Enabled = True - End If - '''''''''Agregar la parte de si tiene credito o no tiene credito - If la_cuenta.Text="0" Then - B_VENTA.Visible = False - gest.Visible = False - Else - B_VENTA.Visible = True - gest.Visible = True - End If -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - 'lat_gps=Location1.Latitude - 'lon_gps=Location1.Longitude -' BT_QR.Enabled = True - Dim sDate,sTime As String - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - Starter.skmt.ExecNonQuery("DELETE FROM HIST_GPS") - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, Starter.lat_gps, Starter.lon_gps)) -End Sub - -Sub ListView1_ItemLongClick (Position As Int, Value As Object) - -End Sub - -Sub gest_Click - Starter.tipov = "PREVENTA" - ' StartActivity(colonia2) - cuestionario -End Sub - -Sub Tels_Click - ' skmt.ExecNonQuery("delete from PEDIDO") -' StartActivity(nopago) - B4XPages.ShowPage("NoVenta") -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True -' StartActivity(colonia) - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub Tar_Click -' StartActivity(tarjeta) - B4XPages.ShowPage("Nota") -End Sub - -Sub DATOS_Click -' StartActivity(telefonos) -End Sub - -Sub Guardar_Click - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - Starter.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - End If - c.Close - - Starter.skmt.ExecNonQuery("delete from pedido3") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 SELECT PE_PRECIO2, PE_TIPO, PE_FOLIO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, 1 As PE_FECHA, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_FOLIO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ") - c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ?", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - Next - End If - Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - - B4XPages.ShowPage("Principal") -' StartActivity(seleccion) -End Sub - -Sub NUEVO_Click -' StartActivity(nuevocliente) -End Sub - -Sub HIST_Click -' StartActivity(Historico) - B4XPages.ShowPage("Historico") -End Sub - -Sub BT_QR_Click - 'StartActivity(QR_MODULE) - Dim scan_width As Int - Dim scan_height As Int - scan_width = 400 - scan_height = 400 - sc.BeginScan("sc","CODIGO CLIENTE",scan_width,scan_height) -End Sub - -Sub sc_result(atype As String,Values As String) - CODIGO = Values - Starter.skmt.ExecNonQuery2("UPDATE kmt_info set CAT_CL_NUM_SERIEFISICO = ?, CAT_CL_LONG = ?, CAT_CL_LAT =? where CAT_CL_CODIGO In (select cuenta from cuentaa)", Array As Object(CODIGO, Starter.lon_gps, Starter.lat_gps)) -End Sub - -Sub sc_noScan - Log("nothing returned from the scan !!!!!") -End Sub - -Sub calc_ean_checksum(number As String) As String 'this has now become redundant as I am only interested in QR Codes - Dim i As Int - Dim cO As Char - Dim soma As Int - Dim n As Int - Dim digit As Float - - soma = 0 - For i=0 To number.Length - 1 - digit = number.SubString2(i,i+1) - n= digit * ((i Mod 2) * 2 + 1) - soma=soma+n - Next - Return number & ( ( 10 - ( soma Mod 10 )) Mod 10 ) -End Sub - -Sub b_mapa_Click -' StartActivity(mapas) -End Sub - -Sub B_IMP_Click - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - perfil = c.GetString("CUANTOS") - c.Close - - If perfil > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - perfil = c.GetString("CAT_VA_VALOR") - c.Close - End If - - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c.Close - c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION =?", Array As String ("SUCURSAL")) - c.Position = 0 - sucursal = c.GetString("CAT_VA_VALOR") - c.Close - ProgressDialogShow("Imprimiendo, un momento ...") - Printer1.DisConnect - If Not(Printer1.IsConnected) Then - Log("Conectando a impresora ...") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) - Sleep(1000) - Log("++++++ " & cont) - cont = cont + 1 - If cont = 7 Then Printer1.Connect 'Tratamos de reconectar - If cont > 15 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - Else - Log("conectando 2") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) - Sleep(1000) - Log("****** " & cont) - cont = cont + 1 - If cont = 2 Then Printer1.Connect - If cont > 4 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - End If - - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - Dim bmp As Bitmap - bmp.InitializeResize(File.DirAssets, "durakelo1.png", 376, 129, True) 'ignore - Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp) - - myimage = Printer1.DitherImage2D(myimage, 128) - - myimage= Printer1.PackImage(myimage) - Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening - Printer1.WriteString(Printer1.REVERSE) - - Printer1.PrintImage(myimage) - Printer1.WriteString(Printer1.UNREVERSE) - - 'Printer1.Justify = 1 - 'printer.Initialize(cmp20.OutputStream) - Printer1.WriteString("DURAKELO S.A. de C.V." & CRLF) - Printer1.WriteString("RFC: DUR-011025-T12" & CRLF) - Printer1.WriteString(sucursal & CRLF) - Printer1.WriteString(sDate & CRLF) - Printer1.WriteString(sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF) - Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF) - Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF) - Printer1.WriteString("Calle: " & la_Calle.Text & CRLF) - Printer1.WriteString("Colonia: " & la_col.Text & CRLF) - Printer1.WriteString("C.P.: " & la_cp.Text & CRLF) - Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF) - Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF) - - If perfil = "V-ESPECIAL" Then 'Or perfil = "V-SUPER" - Printer1.WriteString("-----------PREVENTA-----------" & CRLF) - ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_PRECIO2 as PE_COSTOU, length(PE_PRECIO2) as L_COSTOU,PE_CANT * PE_PRECIO2 AS PE_COSTO_TOT, length(PE_CANT * PE_PRECIO2) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID ", Array As String("PREVENTA")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - - Else - - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - TAMANO = s.GetLong("L_CANT") + TAMANO - TAMANO = s.GetLong("L_COSTOU") + TAMANO - TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO - - ESPACIO = ESPACIO - TAMANO - - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF ) - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - End If - Next - End If - s.Close - s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL, SUM(PE_PRECIO2 * PE_CANT) AS TOTAL2 FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("PREVENTA")) - s.Position =0 - If s.GetString("TOTAL") - s.GetString("TOTAL2") <> 0 Then - Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL")) & CRLF) - End If - Printer1.WriteString("Total Preventa: $" & s.GetString("TOTAL") & CRLF) - s.Close - - Else - Printer1.WriteString("-----------PREVENTA-----------" & CRLF) - ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU,PE_CANT * PE_COSTOU AS PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("PREVENTA")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - - Else - - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - TAMANO = s.GetLong("L_CANT") + TAMANO - TAMANO = s.GetLong("L_COSTOU") + TAMANO - TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO - - ESPACIO = ESPACIO - TAMANO - - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF ) - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - End If - Next - End If - s.Close - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU,PE_CANT * PE_COSTOU AS PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and LENGTH(PE_CEDIS) > 3 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS, PE_COSTOU", Array As String("PREVENTA")) - If S.RowCount>0 Then - Printer1.WriteString("----PROMOS----" & CRLF) - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - - Else - - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - TAMANO = s.GetLong("L_CANT") + TAMANO - TAMANO = s.GetLong("L_COSTOU") + TAMANO - TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO - - ESPACIO = ESPACIO - TAMANO - - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF ) - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - End If - Next - Printer1.WriteString("--FIN PROMOS----" & CRLF) - End If - s.Close - - s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL, SUM(PE_PRECIO2 * PE_CANT) AS TOTAL2 FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("PREVENTA")) - s.Position =0 - ' If s.GetString("TOTAL") - s.GetString("TOTAL2") <> 0 Then - ' Printer1.WriteString("Descuento: $" & (s.GetString("TOTAL2") - s.GetString("TOTAL"))) - ' End If - Printer1.WriteString("Total Preventa: $" & s.GetString("TOTAL") & CRLF) - s.Close - - End If - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("ENTREGA EN :" & CRLF) - Printer1.WriteString(la_Calle.Text & CRLF) - Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF) - Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF) - Printer1.WriteString("--------INFORMATIVO-----------" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(" " & CRLF) - - Sleep(1000) - Printer1.DisConnect - - ProgressDialogHide -' printer.Flush - ' printer.Close - -End Sub - -Sub B_IMP2_Click - c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - perfil = c.GetString("CUANTOS") - c.Close - - If perfil > 0 Then - c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - perfil = c.GetString("CAT_VA_VALOR") - c.Close - End If - - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c.Close - c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION =?", Array As String ("SUCURSAL")) - c.Position = 0 - sucursal = c.GetString("CAT_VA_VALOR") - c.Close - - ProgressDialogShow("Imprimiendo, un momento ...") -' Printer1.DisConnect - If Not(Printer1.IsConnected) Then - Log("conectando 1") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) -' Log("conectando ...") - Sleep(1000) - cont = cont + 1 - If cont = 3 Then Printer1.Connect 'Tratamos de reconectar - If cont > 15 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - Else - Log("conectando 2") - Printer1.Connect - Private cont As Int = 0 - Do While Not(impresoraConectada) Or Not(Printer1.IsConnected) -' Log("conectando ...") - Sleep(1000) - cont = cont + 1 - If cont = 2 Then Printer1.Connect - If cont > 4 Then impresoraConectada = True - Loop - Sleep(500) - impresoraConectada = False - End If - Log("Iniciamos ...") - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - Dim bmp As Bitmap - bmp.InitializeResize(File.DirAssets, "durakelo1.png", 376, 129, True) 'ignore - Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp) - - myimage = Printer1.DitherImage2D(myimage, 128) - - myimage= Printer1.PackImage(myimage) - Log("Iniciamos 2 ...") - Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening - Printer1.WriteString(Printer1.REVERSE) - - Printer1.PrintImage(myimage) - Printer1.WriteString(Printer1.UNREVERSE) - -' printer.Initialize(cmp20.OutputStream) - Printer1.WriteString("DURAKELO S.A. de C.V." & CRLF) - Printer1.WriteString("RFC: DUR-011025-T12" & CRLF) - Printer1.WriteString(sucursal & CRLF) - Printer1.WriteString(sDate & CRLF) - Printer1.WriteString(sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF) - Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF) - Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF) - Printer1.WriteString("Calle: " & la_Calle.Text & CRLF) - Printer1.WriteString("Colonia: " & la_col.Text & CRLF) - Printer1.WriteString("C.P.: " & la_cp.Text & CRLF) - Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF) - Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF) - - Printer1.WriteString("-----------ENTREGA------------" & CRLF) - - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE", Array As String("VENTA")) - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - - Else - - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - TAMANO = s.GetLong("L_CANT") + TAMANO - TAMANO = s.GetLong("L_COSTOU") + TAMANO - TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO - - ESPACIO = ESPACIO - TAMANO - - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF ) - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - End If - Next - End If - s.Close - - s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? AND LENGTH(PE_CEDIS) > 3 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS, PE_COSTOU", Array As String("VENTA")) - If S.RowCount>0 Then - Printer1.WriteString("----PROMOS----" & CRLF) - - For i=0 To S.RowCount -1 - S.Position=i - If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then - Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF) - - Else - - Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF) - TAMANO = s.GetLong("L_CANT") + TAMANO - TAMANO = s.GetLong("L_COSTOU") + TAMANO - TAMANO = s.GetLong("L_COSTO_TOT") + TAMANO - - ESPACIO = ESPACIO - TAMANO - - For E=0 To ESPACIO -1 - BLANCO = " " & BLANCO - Next - Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF ) - TAMANO = 0 - ESPACIO = 21 - BLANCO = " " - End If - - Next - Printer1.WriteString("--FIN PROMOS----" & CRLF) - - End If - s.Close - - Printer1.WriteString(" " & CRLF) - s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA")) - s.Position =0 - Printer1.WriteString("Total entrega: $" & s.GetString("TOTAL") & CRLF) - s.Close -' Printer1.WriteString("------------VENTA-------------") -' Printer1.WriteString("TOTAL COMPRA: $:" & total_cliente) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("ENTREGA EN :" & CRLF) - Printer1.WriteString(la_Calle.Text & CRLF) - Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF) - Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF) - Printer1.WriteString("--------INFORMATIVO-----------" & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(" " & CRLF) - - Sleep(1000) - Printer1.DisConnect - ProgressDialogHide - 'printer.Flush -' printer.Close -End Sub - -Sub B_INV_Click - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c.Close - - TAMANO = 5 - ESPACIO = 21 - BLANCO = " " -' printer.Initialize(cmp20.OutputStream) - Printer1.WriteString("DURAKELO S.A. de C.V." & CRLF) - Printer1.WriteString("RESUMEN DIA A LA HORA" & CRLF) - Printer1.WriteString(sDate & " " & sTime & CRLF) - Printer1.WriteString("Vendedor:" & usuario & CRLF ) - Printer1.WriteString("-------------VENTA-------------" & CRLF) - - E1=Starter.skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("VENTA")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("VENTA")) - c.Position = 0 - Printer1.WriteString("VENTA: " & c.GetString("MONTO_DIA") & CRLF) - c.Close - Else - Printer1.WriteString("VENTA: " & "0" & CRLF) - End If - E1.Close - - E1=Starter.skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("PREVENTA")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("PREVENTA")) - c.Position = 0 - Printer1.WriteString("PREVENTA: " & c.GetString("MONTO_DIA") & CRLF) - c.Close - Else - Printer1.WriteString("PREVENTA: " & "0" & CRLF) - End If - E1.Close - - E1=Starter.skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("ABORDO")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - c=Starter.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("ABORDO")) - c.Position = 0 - Printer1.WriteString("ABORDO: " & c.GetString("MONTO_DIA") & CRLF) - c.Close - Else - Printer1.WriteString("ABORDO: " & "0" & CRLF) - End If - E1.Close - - Printer1.WriteString("-----------INVENTARIO-----------" & CRLF) - ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. - s=Starter.skmt.ExecQuery2 ("select CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_ALMACEN from cat_gunaprod2 where CAT_GP_CLASIF <> ? ORDER BY CAT_GP_NOMBRE ", Array As String("PROMOS")) - - If S.RowCount>0 Then - For i=0 To S.RowCount -1 - S.Position=i - Printer1.WriteString(s.GetString("CAT_GP_NOMBRE") & CRLF) - Printer1.WriteString("CANTIDAD: " & s.GetString("CAT_GP_ALMACEN") & CRLF) - TAMANO = TAMANO + 1 - If TAMANO > 40 Then - t3.Initialize("T3", 4000) ' 1000 = 1 second - t3.Enabled = True - Wait For t3_tick - TAMANO = 0 - End If - Next - End If - s.Close - - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("-----------RMI----------------" & CRLF) - Printer1.WriteString(" " & CRLF) - 'c=Starter.skmt.ExecQuery2("select count(*) as CUANTOS from pedido where substr(pe_pronombre,1,6) = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO")) - 'c.Position =0 - 'Cuantos = c.GETSTRING("CUANTOS") - 'c.Close - 'If Cuantos >0 Then - c=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS CANTIDAD,PE_PRONOMBRE from pedido where substr(pe_pronombre,1,6) = ? GROUP BY PE_PRONOMBRE", Array As String("CAMBIO")) - If C.RowCount>0 Then - For i=0 To C.RowCount -1 - C.Position=i - Printer1.WriteString(C.GetString("CANTIDAD") & " " & C.GetString("PE_PRONOMBRE") & CRLF ) - Next - End If - c.Close - 'End If - - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString("Nombre y Firma" & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("______________________________" & CRLF ) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString(" " & CRLF) - Printer1.WriteString("------------------------------" & CRLF) - Printer1.WriteString(" " & CRLF) -' printer.Flush -End Sub - -Sub B_VENTA_Click - Starter.tipov = "VENTA" - 'StartActivity(colonia2) - cuestionario -End Sub - -Sub b_factura_Click - -End Sub - -Sub CH_TA_CheckedChange(Checked As Boolean) - -End Sub - -Sub CH_TC_CheckedChange(Checked As Boolean) - -End Sub - -Sub CH_TB_CheckedChange(Checked As Boolean) - -End Sub - -Sub CH_TD_CheckedChange(Checked As Boolean) - -End Sub - -Sub B_GUARDAR_Click - If CH_TA.Checked = True Then - TIPOEX = CH_TA.Text - ELSE If CH_TB.Checked = True Then - TIPOEX = CH_TB.Text - ELSE If CH_TC.Checked = True Then - TIPOEX = CH_TC.Text - ELSE If CH_TD.Checked = True Then - TIPOEX = CH_TD.Text - End If - - Panel1.Visible = False - B_EXIBI.Visible = True - b_factura.Visible = True - HIST.Visible = True - Tar.VISIBLE = True - B_IMP.Visible = True - Tels.Visible = True - B_VENTA.Visible = True - B_IMP2.Visible = True - gest.Visible = True - Guardar.Visible = True - B_INV.Visible = True - - c=Starter.skmt.ExecQuery("select CUENTA from cuentaa") - c.Position = 0 - cuenta = c.GetString("CUENTA") - - Starter.skmt.ExecNonQuery2("INSERT INTO HIST_EXIBIDORES(CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR) VALUES(?,?,?)", Array As Object(cuenta,TIPOEX,E_CUANTOS_E.Text)) - -End Sub - -Sub B_EXIBI_Click - s=Starter.skmt.ExecQuery("select CAT_EX_ID, CAT_EX_TIPO, CAT_EX_VALOR FROM CAT_EXHIBIDORES") - - If s.RowCount>0 Then - For i=0 To s.RowCount -1 - s.Position=i - If s.GetString("CAT_EX_ID") = "1" Then - CH_TA.Text = s.GetString("CAT_EX_VALOR") - End If - If s.GetString("CAT_EX_ID") = "2" Then - CH_TB.Text = s.GetString("CAT_EX_VALOR") - End If - If s.GetString("CAT_EX_ID") = "3" Then - CH_TC.Text = s.GetString("CAT_EX_VALOR") - End If - If s.GetString("CAT_EX_ID") = "4" Then - CH_TD.Text = s.GetString("CAT_EX_VALOR") - End If - - Next - End If - - E_CUANTOS_E.Text = "" - CH_TA.Checked = False - CH_TB.Checked = False - CH_TC.Checked = False - CH_TD.Checked = False - Panel1.Visible = True - B_EXIBI.Visible = False - b_factura.Visible = False - HIST.Visible = False - Tar.VISIBLE = False - B_IMP.Visible = False - Tels.Visible = False - B_VENTA.Visible = False - B_IMP2.Visible = False - gest.Visible = False - Guardar.Visible = False - B_INV.Visible = False - -End Sub - -Sub Printer1_Connected (Success As Boolean) - Log("Impresora conectada.") - If Success Then - ToastMessageShow("Connected successfully", False) - Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP")) - Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP", Starter.mac_impresora)) - B_IMP.Enabled = True - impresoraConectada = True - Else -' Msgbox(Printer1.ConnectedErrorMsg, "Error connecting.") -' If Msgbox2("", "Printer Error","Reprint","Cancel","",Null) = DialogResponse.POSITIVE Then 'ignore -' StartPrinter -' End If - End If -End Sub - -Sub StartPrinter - Dim PairedDevices As Map - Dim L As List - Dim resimp As Int - ToastMessageShow("Printing.....",True) - PairedDevices.Initialize - Try - PairedDevices = cmp20.GetPairedDevices - Catch - Msgbox("Getting Paired Devices","Printer Error") 'ignore - printer.Close - cmp20.Disconnect - End Try - - If PairedDevices.Size = 0 Then - Msgbox("Error Connecting to Printer - Printer Not Found","") 'ignore - Return - End If - - If PairedDevices.Size = 1 Then - Try - cmp20.Connect(PairedDevices.Get(PairedDevices.GetKeyAt(0))) - Catch - Msgbox("Connecting","Printer Error") 'ignore - printer.Close - cmp20.Disconnect - End Try - Else - L.Initialize - For i = 0 To PairedDevices.Size - 1 - L.Add(PairedDevices.GetKeyAt(i)) - Next - resimp = InputList(L, "Choose device", -1) 'ignore - If resimp <> DialogResponse.CANCEL Then - cmp20.Connect(PairedDevices.Get(L.Get(resimp))) - End If - End If -End Sub - -Sub cuestionario - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - If TOMAR_FOTO = 0 Then - s=Starter.skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_ENCUESTA where HE_CLIE In (Select cuenta from cuentaa)") - s.Position= 0 - CUANTOS = s.GetString("CUANTOS") - Else - CUANTOS = 0 - End If - If CUANTOS = 0 Then - c=Starter.skmt.ExecQuery("SELECT CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA FROM CAT_ENCUESTA_PREGUNTA ORDER BY CAT_CE_DESCRIPCION, CAST(CAT_EP_ORDEN_PREGUNTA AS DECIMAL)") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - If TOMAR_FOTO = 1 Then - If CURSOR_FOTO + 1 > c.RowCount -1 Then - TOMAR_FOTO = 0 - Exit - Else - i = CURSOR_FOTO +1 - End If - 'Msgbox(i,"a") - TOMAR_FOTO = 0 - End If - c.Position=i - ' Msgbox("paso1","a") - If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 5 Then - id_encuesta = c.GetString("CAT_EP_ID") - TOMAR_FOTO = 1 - CURSOR_FOTO = i -' StartActivity(foto) - ' Msgbox("paso2","a") - Exit - ELSE IF c.GetString("CAT_EP_IDTIPOPREGUNTA") = 3 Then - res = Msgbox2(c.GetString("CAT_EP_PREGUNTA"),c.GetString("CAT_CE_DESCRIPCION"), "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) - If res = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "SI",sDate & sTime,c.GetString("CAT_EP_ID"))) - Else IF res = DialogResponse.NEGATIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "NO",sDate & sTime,c.GetString("CAT_EP_ID"))) - Else IF res = DialogResponse.CANCEL Then - i = i -1 - End If - ELSE IF c.GetString("CAT_EP_IDTIPOPREGUNTA") = 4 Then - res = Msgbox2(c.GetString("CAT_EP_PREGUNTA"),c.GetString("CAT_CE_DESCRIPCION"), "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) - If res = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "SI",sDate & sTime,c.GetString("CAT_EP_ID"))) - 'i = c.GetString("CAT_EP_RES1_PRED") -1 - Else IF res = DialogResponse.NEGATIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, "NO",sDate & sTime,c.GetString("CAT_EP_ID"))) - i = c.GetInt("CAT_EP_RES2_PRED") -2 - Else IF res = DialogResponse.CANCEL Then - i = i -1 - End If - ' Msgbox("paso3","a") - ELSE If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 2 Then - res = Msgbox2(c.GetString("CAT_EP_PREGUNTA"),c.GetString("CAT_CE_DESCRIPCION"), c.GetString("CAT_EP_RES1_PRED"), c.GetString("CAT_EP_RES2_PRED"),c.GetString("CAT_EP_RES3_PRED"),LoadBitmap(File.DirAssets,"alert2.png")) - If res = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, c.GetString("CAT_EP_RES1_PRED"),sDate & sTime,c.GetString("CAT_EP_ID"))) - Else IF res = DialogResponse.NEGATIVE Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, c.GetString("CAT_EP_RES3_PRED"),sDate & sTime,c.GetString("CAT_EP_ID"))) - Else IF res = DialogResponse.CANCEL Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, c.GetString("CAT_EP_RES2_PRED"),sDate & sTime,c.GetString("CAT_EP_ID"))) - End If - ' Msgbox("paso4","a") - ELSE If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 6 Then - Panel10.Visible = True - l_chk_e.Text = c.GetString("CAT_EP_PREGUNTA") - Chk_1.Checked = False - chk_2.Checked = False - chk_3.Checked = False - Chk_1.Text = c.GetString("CAT_EP_RES1_PRED") - chk_2.Text = c.GetString("CAT_EP_RES2_PRED") - chk_3.Text = c.GetString("CAT_EP_RES3_PRED") - chk_1_valor = c.GetString("CAT_EP_RES1_PRED") - chk_2_valor = c.GetString("CAT_EP_RES2_PRED") - chk_3_valor = c.GetString("CAT_EP_RES3_PRED") - TOMAR_FOTO = 1 - CURSOR_FOTO = i - ' Msgbox("paso5","a") - Exit - ELSE If c.GetString("CAT_EP_IDTIPOPREGUNTA") = 1 Then - Panel9.Visible = True - t_tenc.Text = c.GetString("CAT_EP_PREGUNTA") - Label26.Text = c.GetString("CAT_CE_DESCRIPCION") - E_RES_E.Text = "" - TOMAR_FOTO = 1 - CURSOR_FOTO = i - Exit - Else - ' Main.tipov = "VENTA" -' StartActivity(colonia2) - End If - Next - Else - ' Main.tipov = "VENTA" -' StartActivity(colonia2) - End If - Else - ' Main.tipov = "VENTA" -' StartActivity(colonia2) - End If -End Sub - -Sub B_E_NEXT_Click - Panel9.Visible = False - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, E_RES_E.Text ,sDate & sTime,c.GetString("CAT_EP_ID"))) - Starter.tipov = "VENTA" - 'TOMAR_FOTO = 1 - cuestionario - 'StartActivity(colonia2) - -End Sub - -Sub b_chk_e_Click - Panel10.Visible = False - - If Chk_1.Checked = True Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, chk_1_valor,sDate & sTime,c.GetString("CAT_EP_ID"))) - else if chk_2.Checked = True Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, chk_2_valor,sDate & sTime,c.GetString("CAT_EP_ID"))) - else if chk_3.Checked = True Then - Starter.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO) VALUES (?,?,?,?)", Array As Object(la_cuenta.Text, chk_3_valor,sDate & sTime,c.GetString("CAT_EP_ID"))) - End If - Starter.tipov = "VENTA" - 'TOMAR_FOTO = 1 - cuestionario -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_Clientes.bas b/B4A - Copy/C_Clientes.bas deleted file mode 100644 index c35f70c..0000000 --- a/B4A - Copy/C_Clientes.bas +++ /dev/null @@ -1,213 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - Dim ruta As String - Dim q_buscar As String - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - Dim skmt As SQL - Dim c As Cursor - Dim c2 As Cursor - Dim s As Cursor - Dim ListView1 As ListView - Dim entro As String - Dim gest As Button - Dim lfila As Label - Dim busca As EditText - Dim colonia As String - Private b_qr As Button - Private qr As QRCode -' Dim sc As Zxing_scanner - Dim CODIGO As String -End Sub - -Sub initialize - -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - 'Do not forget to load the layout file created with the visual designer. For example: - 'Activity.LoadLayout("Layout1") - Root = Root1 - Root.LoadLayout("Clientes") - entro ="2" - ' valido donde escribo el archivo de la base de datos de kmt - ruta = File.DirInternal - If File.Exists(ruta, "kmt.db") = False Then - File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") - End If -' qr.initialize -End Sub - -Sub B4XPage_Appear - b_qr.Visible = False ' No usamos el lector QR en esta app - CHV - busca.Text = "" - skmt.Initialize(ruta,"kmt.db", True) - entro ="2" - colonia = 0 - ' esto es para rutas se quito por colonia c=skmt.ExecQuery("select CAT_CL_RUTA, count(*) as cuantos from kmt_info where gestion = 0 group by CAT_CL_RUTA order by CAT_CL_RUTA asc") - 'SE COMENTA EL SIGUIENTE CODIGO PARA QUE TODAS LAS TIENDAS APARESCAN. - - ' c=skmt.ExecQuery("select CAT_CL_COLONIA, count(*) as cuantos from kmt_info where gestion = 0 group by CAT_CL_COLONIA order by CAT_CL_COLONIA asc") - c=skmt.ExecQuery("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO,CAT_CL_NUM_SERIEFISICO from kmt_info where gestion = 0 and cat_cl_codigo <> 0 ORDER BY CAST(CAT_CL_NUM_SERIEFISICO AS DECIMAL)") - ListView1.Clear - lfila.Text = "NOMBRE" - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 10 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO"), c.GetString("CAT_CL_NUM_SERIEFISICO") & " " & c.GetString("CAT_CL_NOMBRE")) - Next - End If - entro = "4" - ' ESTE FUE EL FIN DEL CODIGO COMENTADO - -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - If colonia = 0 Then - colonia = Value - End If - If entro = "2" Then - c2=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=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 - skmt.ExecNonQuery("delete from CUENTAA") - skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) -' StartActivity(fila) - B4XPages.ShowPage("Cliente") - End If -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' If entro = "3" Then - 'entro = "2" - 'B4XPage_Appear - 'Return True - 'Else If entro = "2" Then - 'entro = "1" - 'B4XPage_Appear - 'Return True - 'Else If entro = "1" Then - - ' I want to capture the key here so I return True - -' StartActivity(seleccion) - B4XPages.ShowPage("Principal") - Return False - 'End If - End If - ' Returning False signals the system to handle the key - -End Sub - -Sub BUSCA_TextChanged (Old As String, New As String) - q_buscar = "%" & busca.Text & "%" - skmt.Initialize(ruta,"kmt.db", True) - - c2=skmt.ExecQuery2("select CAT_CL_NOMBRE, CAT_CL_CALLE, CAT_CL_CODIGO from kmt_info where (CAT_CL_NOMBRE like ? OR CAT_CL_CODIGO LIKE ?)and gestion = 0 order by CAT_CL_NOMBRE ", Array As String(q_buscar,q_buscar)) - ListView1.Clear - lfila.text = "Nombre y Calle" - - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 10 - label1.TextColor = Colors.White - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.White - ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE") &" CALLE: "& c2.GetString("CAT_CL_CALLE")) - Next - End If - entro = "4" - - c2.Close -End Sub - -Sub b_qr_Click - 'StartActivity(QR_MODULE) - Dim scan_width As Int - Dim scan_height As Int - scan_width = 400 - scan_height = 400 -' sc.BeginScan("sc","CODIGO CLIENTE",scan_width,scan_height) - -End Sub - - -Sub sc_result(atype As String,Values As String) - 'Log("Type : " & atype) - 'Log("Value : " & Values) - CODIGO = Values - - c2=skmt.ExecQuery2("select COUNT(*) AS ENCONTRADO from kmt_info where CAT_CL_NUM_SERIEFISICO = ? order by CAT_CL_NOMBRE ", Array As String(CODIGO)) - c2.Position =0 - If c2.GetString("ENCONTRADO") > 0 Then - s=skmt.ExecQuery2("select CAT_CL_CODIGO from kmt_info where CAT_CL_NUM_SERIEFISICO = ? order by CAT_CL_NOMBRE ", Array As String(CODIGO)) - s.Position =0 - skmt.ExecNonQuery("delete from CUENTAA") - skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(s.GetString("CAT_CL_CODIGO"))) - s.Close - b_qr.Visible = False -' StartActivity(fila) - Else - Msgbox("CODIGO " & CODIGO & " NO ENCONTRADO","AVISO") - End If -End Sub -Sub sc_noScan - Log("nothing returned from the scan !!!!!") -End Sub -Sub calc_ean_checksum(number As String) As String 'this has now become redundant as I am only interested in QR Codes - Dim i As Int - Dim cO As Char - Dim soma As Int - Dim n As Int - Dim digit As Float - - soma = 0 - For i=0 To number.Length - 1 - digit = number.SubString2(i,i+1) - n= digit * ((i Mod 2) * 2 + 1) - soma=soma+n - Next - Return number & ( ( 10 - ( soma Mod 10 )) Mod 10 ) -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_Historico.bas b/B4A - Copy/C_Historico.bas deleted file mode 100644 index f036d4f..0000000 --- a/B4A - Copy/C_Historico.bas +++ /dev/null @@ -1,148 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. -' Dim skmt As SQL - Dim g As GPS - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String - - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - Dim c As Cursor - Dim ruta As String - Dim Regresar As Button - Dim ListView1 As ListView - Dim L_CANT As Label - Dim L_TOTAL As Label - Dim borra As Button - Dim Existe As String - Dim result As String - ' Dim lat_gps, lon_gps As String - - Private Titulo As Label - Private b_desc As Button - Private ListView2 As ListView - Private B_RMI As Button -End Sub - -Sub initialize - -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - Root.LoadLayout("Historico") - borra.Visible = False - Titulo.Text = "Acumulado" - b_desc.Visible = False - g.Initialize("gps") -End Sub - -Sub B4XPage_Appear - B_RMI.Visible = True - If g.GPSEnabled=False Then - ToastMessageShow("Habilitar el GPS", True) - StartActivity(g.LocationSettingsIntent) - Else - g.Start(0,0) - End If - L_CANT.Text ="" - L_TOTAL.Text="" - c=Starter.skmt.ExecQuery("select count(*) as EXISTE from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa)") - C.Position=0 - Existe = C.GetString("EXISTE") - C.Close - c=Starter.skmt.ExecQuery("select HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA from HIST_VENTAS WHERE HVD_CLIENTE IN (Select CUENTA from cuentaa) order by HVD_FECHA asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("HVD_PRONOMBRE"),"Cantidad #"& c.GetString("HVD_CANT")& " SubTotal $"& c.GetString("HVD_COSTO_TOT")& " FECHA " &c.GetString("HVD_FECHA") ) - Next - End If - If Existe <> 0 Then - c=Starter.skmt.ExecQuery("select SUM(HVD_CANT) AS PC_NOART, SUM(HVD_COSTO_TOT) AS PC_MONTO from HIST_VENTAS where HVD_CLIENTE in (Select CUENTA from cuentaa)") - C.Position=0 - L_CANT.Text = c.GetString("PC_NOART") - L_TOTAL.Text = c.GetString("PC_MONTO") - End If - 'la_no_ird.Text = c.GetString("PR_CF_SALDO_ACORT") - - -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - 'lat_gps=Location1.ConvertToSeconds(Location1.Latitude) - 'lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub Regresar_Click - B_RMI.Visible = False -' StartActivity(fila) - B4XPages.ShowPage("Cliente") -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True -' StartActivity(seleccion) - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub ListView2_ItemClick (Position As Int, Value As Object) - ListView2.Visible = False - ListView1.Visible = True -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - ListView2.Visible = True - ListView1.Visible = False - Dim label1 As Label - ListView2.Clear - For i=0 To 20 - label1 = ListView2.SingleLineLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - ListView2.AddSingleLine(i) - Next -End Sub - -Sub B_RMI_Click - c=Starter.skmt.ExecQuery("select HR_CLIENTE,HR_PRONOMBRE,HR_CANT from HIST_RMI WHERE HR_CLIENTE IN (Select CUENTA from cuentaa)") - ListView1.Clear - If c.RowCount > 0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("HR_PRONOMBRE"),"Cantidad #"& c.GetString("HR_CANT") ) - Next - End If -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_Mapas.bas b/B4A - Copy/C_Mapas.bas deleted file mode 100644 index 0172bfa..0000000 --- a/B4A - Copy/C_Mapas.bas +++ /dev/null @@ -1,6 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ diff --git a/B4A - Copy/C_NoVenta.bas b/B4A - Copy/C_NoVenta.bas deleted file mode 100644 index 6945449..0000000 --- a/B4A - Copy/C_NoVenta.bas +++ /dev/null @@ -1,95 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - Dim g As GPS - Dim ruta As String - Dim skmt As SQL - Dim c As Cursor - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - Dim CANCELA As Button - Dim GUARDA As Button - Dim r_1 As RadioButton - Dim r_2 As RadioButton - Dim r_3 As RadioButton - Dim e_comm As EditText - Dim motivo As String - Dim cuenta As String - Dim usuario As String - Dim sDate,sTime As String -' Dim lat_gps, lon_gps As String - Dim r_4 As RadioButton -End Sub - -Sub initialize - -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - Root.LoadLayout("NoVenta") - g.Initialize("gps") -End Sub - -Sub B4XPage_Appear - e_comm.Text = "" - If g.GPSEnabled = False Then - ToastMessageShow("Habilitar el GPS", True) - StartActivity(g.LocationSettingsIntent) - Else - g.Start(0,0) - End If -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - 'lat_gps=Location1.ConvertToSeconds(Location1.Latitude) - 'lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub CANCELA_Click -' StartActivity(fila) - B4XPages.ShowPage("Cliente") -End Sub - -Sub GUARDA_Click - If r_1.Checked Then - motivo = "CERRADO" - Else If r_2.Checked Then - motivo = "NO COMPRA" - Else If r_3.Checked Then - motivo = "CON PRODUCTO" - Else - motivo = "NO ESTA EL ENCARGADO" - End If - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("select CUENTA from cuentaa") - c.Position = 0 - cuenta = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c=Starter.skmt.ExecQuery("select PE_PROID,PE_CANT FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Next - End If - Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)") - - Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON) VALUES(?,?,?,?,?,?,?) ", Array As Object (cuenta,sDate & sTime, usuario, motivo,e_comm.text,Starter.lat_gps,Starter.lon_gps)) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)") -' StartActivity(seleccion) - B4XPages.ShowPage("Principal") -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_Nota.bas b/B4A - Copy/C_Nota.bas deleted file mode 100644 index 4acaa62..0000000 --- a/B4A - Copy/C_Nota.bas +++ /dev/null @@ -1,319 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - Dim skmt As SQL - Dim g As GPS - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - Dim c As Cursor - Dim d As Cursor - Dim ruta As String - Dim Regresar As Button - - Dim ListView1 As ListView - Dim L_CANT As Label - Dim L_TOTAL As Label - Dim borra As Button - Dim Existe As String - Dim result As String - ' Dim lat_gps, lon_gps As String - Dim DESC As String - - Private Titulo As Label - Private b_desc As Button - Dim DESCUENTO As String - Dim folio As String - Dim TIPO As String -End Sub - -Sub initialize - -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - 'Do not forget to load the layout file created with the visual designer. For example: - 'Activity.LoadLayout("Layout1") - Root = Root1 - g.Initialize("GPS") - ruta = File.DirInternal - Root.LoadLayout("historico") - borra.Visible = True - Titulo.Text = "Pedido Actual" - Starter.skmt.ExecNonQuery("update pedido set pe_folio = 0 where pe_folio is null") - c=Starter.skmt.ExecQuery("select count(*) as EXISTE from pedido_cliente WHERE pc_cliente IN (Select CUENTA from cuentaa)") - C.Position=0 - Existe = C.GetString("EXISTE") - C.Close - c=Starter.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("PE_PRONOMBRE"),"Cantidad #"& c.GetString("PE_CANT")& " SubTotal $"& c.GetString("PE_COSTO_TOT")& " Folio "& c.GetString("PE_FOLIO")) - folio = c.GetString("PE_FOLIO") - Next - End If - If Existe <> 0 Then - c=Starter.skmt.ExecQuery("select pc_noart, pc_monto from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - C.Position=0 - L_CANT.Text = c.GetString("PC_NOART") - L_TOTAL.Text = c.GetString("PC_MONTO") - End If -End Sub - -Sub B4XPage_Appear - If g.GPSEnabled=False Then - ToastMessageShow("Habilitar el GPS", True) - StartActivity(g.LocationSettingsIntent) - Else - g.Start(0,0) - End If - - L_CANT.Text ="" - L_TOTAL.Text="" - Starter.skmt.ExecNonQuery("update pedido set pe_folio = 0 where pe_folio is null") - - c=Starter.skmt.ExecQuery("select count(*) as EXISTE from pedido_cliente WHERE pc_cliente IN (Select CUENTA from cuentaa)") - C.Position=0 - Existe = C.GetString("EXISTE") - C.Close - c=Starter.skmt.ExecQuery("select PE_PRONOMBRE,PE_COSTO_TOT, PE_CANT, PE_FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE asc") - ListView1.Clear - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("PE_PRONOMBRE"),"Cantidad #"& c.GetString("PE_CANT")& " SubTotal $"& c.GetString("PE_COSTO_TOT")& " Folio "& c.GetString("PE_FOLIO")) - folio = c.GetString("PE_FOLIO") - Next - End If - If Existe <> 0 Then - c=Starter.skmt.ExecQuery("select pc_noart, pc_monto from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - C.Position=0 - L_CANT.Text = c.GetString("PC_NOART") - L_TOTAL.Text = c.GetString("PC_MONTO") - c.Close - c=Starter.skmt.ExecQuery("select SUM(IFNULL(PE_DESC,0)) AS DESCUENTO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - DESC = c.GetString("DESCUENTO") - 'If L_TOTAL.Text > 1000 And DESC = 0 Then - - 'b_desc.Visible = True - 'b_desc.Text = "- 5% DESC" - 'DESCUENTO = "MENOS" - 'Else if L_TOTAL.Text > 1000 Then - 'b_desc.Visible = True - 'b_desc.Text = "Cancela Desc" - 'DESCUENTO = "MAS" - 'Else - b_desc.Visible = False - - 'End If - End If - 'la_no_ird.Text = c.GetString("PR_CF_SALDO_ACORT") - - -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - -End Sub - -Sub GPS_LocationChanged (Location1 As Location) - 'lat_gps=Location1.ConvertToSeconds(Location1.Latitude) - 'lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub Regresar_Click -' StartActivity(fila) - B4XPages.ShowPage("Cliente") -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True -' StartActivity(seleccion) - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub borra_Click - If folio <> "" Then - result = Msgbox2("Seguro que desa borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - - c=Starter.skmt.ExecQuery("select PE_PROID,PE_CANT, PE_TIPO FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - TIPO = c.GetString("PE_TIPO") - If c.GetString("PE_TIPO") = "VENTA" Then - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Else - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - End If - Next - End If - - - Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)") - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - B4XPage_Appear - End If - Else - Msgbox("CLIENTE YA SE TRANSMITIO, FAVOR DE LLAMAR A SOPORTE PARA ASISTENCIA","AVISO") 'ignore - End If -End Sub - -Sub ListView1_ItemLongClick (Position As Int, Value As Object) - result = Msgbox2("Seguro que desa borrar este articulo?","Borrar Articulo", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - -' If TIPO = "VENTA" Then -' c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from cat_gunaprod2 where CAT_GP_ID in (select pe_cedis from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)) and CAT_GP_CLASIF = 'PROMOS' AND CAT_GP_TIPO = 'PROMOS' AND CAT_GP_SUBTIPO = 'PROMOS'", Array As String(Value)) -' Else -' c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from cat_gunaprod where CAT_GP_ID in (select pe_cedis from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)) and CAT_GP_CLASIF = 'PROMOS' AND CAT_GP_TIPO = 'PROMOS' AND CAT_GP_SUBTIPO = 'PROMOS'", Array As String(Value)) -' End If - c=Starter.skmt.ExecQuery2("SELECT COUNT(*) as CUANTOS FROM PEDIDO WHERE pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa) and length(pe_cedis) > 3 ", Array As String(Value)) - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - - d=Starter.skmt.ExecQuery2("select PE_PROID,PE_CANT, PE_TIPO FROM PEDIDO where pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa) and length(pe_cedis) > 3", Array As String(Value)) - - If d.RowCount>0 Then - For i=0 To d.RowCount -1 - d.Position=i - TIPO = d.GetString("PE_TIPO") - If d.GetString("PE_TIPO") = "VENTA" Then - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(d.GetString("PE_CANT"),d.GetString("PE_PROID"))) - Else - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(d.GetString("PE_CANT"),d.GetString("PE_PROID"))) - End If - Next - End If - d.Close - - - Starter.skmt.ExecNonQuery2("delete from pedido where pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value)) - Else - d=Starter.skmt.ExecQuery2("select PE_PROID,PE_CANT, PE_TIPO FROM PEDIDO where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa) ", Array As String(Value)) - d.Position = 0 - - TIPO = d.GetString("PE_TIPO") - If d.GetString("PE_TIPO") = "VENTA" Then - Starter.skmt.ExecNonQuery2("update cat_gunaprod2 set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(d.GetString("PE_CANT"),d.GetString("PE_PROID"))) - Else - Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(d.GetString("PE_CANT"),d.GetString("PE_PROID"))) - End If - d.Close - - - Starter.skmt.ExecNonQuery2("delete from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value)) - End If - - - - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Else - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - End If - B4XPage_Appear - End If -End Sub - -Sub b_desc_Click - If DESCUENTO = "MENOS" Then - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c.Close - result = Msgbox2("Seguro que desa dar descuento del 5%?","Dar descuento", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery("UPDATE pedido SET PE_COSTO_TOT = PE_COSTO_TOT * .95, PE_DESC = 5 WHERE PE_CLIENTE In (select cuenta from cuentaa)") - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps)) - c.Close - B4XPage_Appear - End If - ELSE IF DESCUENTO = "MAS" Then - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=Starter.skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - c.Close - result = Msgbox2("Seguro que desa CANCELAR el descuento?","Cancelar descuento", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore - If result = DialogResponse.POSITIVE Then - Starter.skmt.ExecNonQuery("UPDATE pedido SET PE_COSTO_TOT = PE_COSTO_TOT / .95, PE_DESC = 0 WHERE PE_CLIENTE In (select cuenta from cuentaa)") - c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"),Starter.lon_gps, Starter.lat_gps)) - c.Close - B4XPage_Appear - End If - End If -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_Principal.bas b/B4A - Copy/C_Principal.bas deleted file mode 100644 index fecd550..0000000 --- a/B4A - Copy/C_Principal.bas +++ /dev/null @@ -1,2726 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - Dim reqManager As DBRequestManager - Dim conectado As String - Dim skmt As SQL - Dim t1 As Timer - Dim Timer_GIF1 As Timer - Dim Frame1 As Int - Dim Awake As PhoneWakeState - Dim sb As StringBuilder - Dim PHONE As Phone - Timer_GIF1.Initialize("Timer1",0) -' Dim g As GPS - Dim trabajar As Button - Dim T3 As Timer - Dim c As Cursor - Dim d As Cursor - Dim d3 As Cursor - Dim b As Cursor - Dim e As Cursor - Dim f As Cursor - Dim D2 As Cursor - Dim E1 As Cursor - Dim lv As ListView - Dim cargar As Button - Dim pendiente As Button - Dim foto1() As Byte - Dim usuario As String - Dim connecta As Button - Dim conn As String - Dim Subir As Button - Dim cmd As DBCommand - Dim TOPE As Int - Dim COUNT_CLIE As Int - Dim fecha As String - Dim drop As Double - Dim efectiva As Double - Dim HORAINGRESO As String - Dim L_MONTOD As Label - Dim l_cuantosc As Label - Dim l_drop As Label - Dim l_efectiva As Label - Dim l_ctast As Label - Dim BUSCA As Button - Dim Cuantos As String - Dim l_cuantosn As Label - Dim e_ruta As EditText - Dim l_porvisitar As Label - Dim b_mapa As Button - Dim l_ruta As Label - Dim ALMACEN As String - Private img2 As ImageView - Dim Listo1 As String - Dim Listo2 As String - Dim Listo3 As String - Dim Listo4 As String - Dim Listo5 As String - Dim EJECUTANDO As String - Dim RES As String - Dim inve As String - Dim cuantos_pedidosc As String - Dim cuantos_pedido As String - Dim cuantos_noventa As String - Dim datos_iguales As String - Dim p As PhoneId - Dim imei As String - Dim SERVER As String -' Dim lat_gps, lon_gps As String - - Private inv As Button - Private P1 As Panel - Private CLAVE As EditText - Private B_OK_PAS As Button - Dim PASO As String - Private USUARIO1 As EditText - Dim connecta1 As Double - Dim armafolio As String - Private NUEVO As Button - Private S_CC As Label - Private S_CP As Label - Private S_CH As Label - Private PB2 As ProgressBar - Private PB1 As ProgressBar - Private L_P_1 As Label - Private L_P_2 As Label - Private L_P_3 As Label - Private CARGA As String - Private PORCENTAJE As String - Private P_RESUMEN As Panel - Private B_OK_RES As Button - Private Resumen As Button - Private L_CUANTOST As Label - Private img3 As ImageView - - Private ImageView3 As ImageView - Private ImageView5 As ImageView - Private L_TICKPROM As Label - Private MARCASQ As String - Private B_PROXIMA As Button - Private l_monto_a As Label - Private ImageView9 As ImageView - Private L_MONTO_R As Label - Dim PERFIL As String - Dim NUMERO_PEDIDO As String - Private l_cambios As Label - Private l_monto_ks As Label - Private l_monto_kp As Label - Private l_monto_k As Label - Private Cuantos As String - Private TIEMPO As String - Private i_gif As ImageView - Dim gif1 As GifDecoder - Dim ruta As String - - Private L_VENTA As Label - Private L_PREVENTA As Label - Private L_ABORDO As Label - - Dim cuantos_ped As String - Dim conteo As String - Private PASO_info As String - - Private bpv1 As BatteryProgressView - Dim batterystatus(11) As Int - Private bu As BatteryUtilities - - - Private ImageView12 As ImageView - - Private TitleHeight As Int = 50dip - Private Title2Height As Int = 100dip - - Private DividerHeight As Int = 5dip - Private CLV1 As CustomListView - Private pnlTitle As B4XView - Private xui As XUI - Type TitleData (Title As String) - - Private B_MARCAS As Button - Private Panel5 As Panel - Private lblTitle As Label - Private B_OK_PANEL5 As Button - Private Btn_UbicarR As Button - Private SUBIR_P As Button - Private b_e_resumen As Button - Private cuantos_exib As String - Dim ime As IME - Private l_monto_kc As Label - Private l_version As Label -End Sub - -Sub initialize - -End Sub - - -Private Sub B4XPage_Created (Root1 As B4XView) - EJECUTANDO=1 - SERVER = Starter.DBReqServer - reqManager.Initialize(Me, SERVER) - Log(SERVER) - Root = Root1 - Root.LoadLayout("principal") - img2.Visible =False - - ' valido donde escribo el archivo de la base de datos de kmt - ruta = File.DirInternal - Log(SERVER) - ' se crea o no el archivo de la base de ddatos de kmt - 'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE - 'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA - 'SI SE REGRESA A ESTE ACTIVIDAD. - If File.Exists(ruta, "kmt.db") = False Then - File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") - End If - DateTime.DateFormat = "MM/dd/yyyy" - fecha=DateTime.Date(DateTime.Now) - skmt.Initialize(ruta,"kmt.db", True) - - b=skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - d=skmt.ExecQuery("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0") - D.Position=0 - b.Close - e=skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info") - e.Position=0 - f=skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - If l_ruta.Text = 0 Then - l_ruta.Text =0 - Else - f=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - End If - If Cuantos = 0 Then - L_MONTOD.Text =0 - l_cuantosc.Text = 0 - l_cuantosn.Text = 0 - drop = 0 - l_drop.Text = 0 - efectiva = 0 - l_efectiva.text =0 - l_ctast.Text = d.GetString("TOTAL_VISITAR") - l_porvisitar.Text = e.GetString("POR_VISITAR") - Else - c=skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente ") - b=skmt.ExecQuery("select count(*) as CUANTOS from noventa") - 'where pc_fecha = ?", Array As String(fecha) - C.Position=0 - b.Position=0 - L_MONTOD.Text = c.GetString("MONTO_DIA") - l_cuantosc.Text = c.GetString("CLIENTES_DIA") - l_cuantosn.Text = b.GetString("CUANTOS") - drop = c.GetString("MONTO_DIA") / c.GetString("CLIENTES_DIA") - l_drop.Text = Round2(drop,2) - efectiva = c.GetString("CLIENTES_DIA") / e.GetString("POR_VISITAR") - l_efectiva.text = Round2(efectiva*100,2) - l_ctast.Text = d.GetString("TOTAL_VISITAR") - l_porvisitar.Text = e.GetString("POR_VISITAR") - End If - - c = skmt.ExecQuery2("select count(CAT_VA_DESCRIPCION) as HoraIngreso from cat_variables where CAT_VA_DESCRIPCION = ? ", Array As String("HoraIngreso")) - c.Position = 0 - DateTime.TimeFormat = "HHmmss" - - 'Valida si ya se cuenta con hora actualiza el valor si no lo inserta----------- - If c.GetString("HoraIngreso") > 0 Then - skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) - Else - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_VALOR,CAT_VA_DESCRIPCION) VALUES (?,?)" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) - End If - DateTime.TimeFormat = "HH:mm:ss" - P1.Top = 0 : P1.left = 0 - P_RESUMEN.Top = 0 : P_RESUMEN.left = 0 - P_RESUMEN.Width = Root.Width -End Sub - -Sub IsConnectedToInternet As Boolean - Dim r As Reflector - r.Target = r.GetContext - r.Target = r.RunMethod2("getSystemService", "connectivity", "java.lang.String") - r.Target = r.RunMethod("getActiveNetworkInfo") - If r.Target <> Null Then - Return r.RunMethod("isConnectedOrConnecting") - End If - Return False -End Sub - -Sub B4XPage_Appear - SERVER = Starter.DBReqServer - HORAINGRESO ="000000" - NUEVO.Visible = True - c=skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",SERVER)) - Else - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER")) - c.Position =0 - SERVER = c.GetString("CAT_VA_VALOR") - End If - - reqManager.Initialize(Me, SERVER) - Log(SERVER) - - If PASO = 2 Then - Dim result As Int - result = Msgbox2("El proceso de enviar información no a terminado, Continuar", "", "Si", "", "No", LoadBitmap(File.DirAssets, "alert2.png")) - If result = DialogResponse.POSITIVE Then - VALIDA_INFO - Else - PASO = 0 - End If - Else - PASO =0 - End If - - f=skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - If l_ruta.Text = 0 Then - l_ruta.Text =0 - Else - f=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - End If - - c=skmt.ExecQuery2("select count(*) as CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA")) - c.Position =0 - If c.GetString("CUANTOS") = 0 Then - cmd.Initialize - cmd.Name = "select_fechat" - reqManager.ExecuteQuery(cmd , 0, "fecha") - - Msgbox("AJUSTAR FECHA","AVISO") - B4XPage_Appear - Else - - - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FECHA")) - c.Position =0 - Dim sDate,sTime As String - DateTime.DateFormat = "yyyyMMddHHmm" - sDate=DateTime.Date(DateTime.Now) -' Msgbox("AaaaA " & " "& c.GetString("CAT_VA_VALOR") & " " & sDate & sTime ,"AVISO") - - If c.GetString("CAT_VA_VALOR") > sDate & sTime Then - Msgbox("AJUSTAR LA FECHA YA QUE ES MENOR AL SISTEMA" ,"AVISO") - DateTime.TimeFormat = "HH:mm:ss" - B4XPage_Appear - End If - DateTime.TimeFormat = "MM/dd/yyyyHH:mm:ss" - - End If - - - L_CUANTOST.Text = l_cuantosc.Text + l_cuantosn.Text - If EJECUTANDO =0 Then - Listo1 = 0 - Listo2 = 0 - Listo3 = 0 - Listo4 = 0 - Listo5 = 0 - inve = 0 - img2.Visible =False - End If -' DateTime.DateFormat = "MM/dd/yyyy" - fecha=DateTime.Date(DateTime.Now) - c=skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c.Close - - c=skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - C.Position =0 - ALMACEN = C.GetString("ID_ALMACEN") - C.Close - 'ALMACEN = 1 - - b=skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente where pc_cliente <> 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - - If Cuantos = 0 Then - L_MONTOD.Text =0 - l_cuantosc.Text = 0 - l_cuantosn.Text = 0 - drop = 0 - l_drop.Text = 0 - efectiva = 0 - l_efectiva.text =0 - l_ctast.Text = d.GetString("TOTAL_VISITAR") - l_porvisitar.Text = e.GetString("POR_VISITAR") - - Else - c=skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente where pc_cliente <> 0") - b=skmt.ExecQuery("select count(*) as CUANTOS from noventa") - 'where pc_fecha = ?", Array As String(fecha) - C.Position=0 - b.Position=0 - L_MONTOD.Text = c.GetString("MONTO_DIA") - l_cuantosc.Text = c.GetString("CLIENTES_DIA") - l_cuantosn.Text = b.GetString("CUANTOS") - - L_CUANTOST.Text = l_cuantosc.Text + l_cuantosn.Text - - End If - - -' Main.montoActual = L_MONTOD.Text -' Main.clientestotal = L_CUANTOST.Text -' Main.clientesventa = l_cuantosc.Text -' Main.clientesvisitados = l_porvisitar.TEXT -' Main.ALMACEN = ALMACEN -' Main.rutapreventa = l_ruta.text - - DateTime.TimeFormat = "HH:mm:ss" - - c=skmt.ExecQuery("select NOVERSION FROM VERSION") - c.Position = 0 - - If c.GetString("NOVERSION") <> "2.6" Then - Msgbox("VERSION INCORRECTA SOLICITAR O DESCARGAR LA NUEVA","ALERTA") - B4XPage_Appear - End If - CallSub(Starter,"ENVIA_ULTIMA_GPS") -End Sub - -'Sub Activity_Pause (UserClosed As Boolean) -' cargar.Visible = False -' Subir.Visible = False -' SUBIR_P.Visible = False -' -' connecta.Visible = True -' inv.Visible = False -' If PASO = 1 Then -' PASO = 2 -' End If -'End Sub - -Sub trabajar_Click - 'CallSubDelayed(gestion,"gestion") - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MARCAS")) - c.Position =0 - MARCASQ = c.GetString("CAT_VA_VALOR") - c.Close - skmt.ExecNonQuery("delete from CAT_GUNAPROD WHERE CAT_GP_CLASIF NOT IN (" & MARCASQ &")" ) - skmt.ExecNonQuery("delete from CAT_GUNAPROD WHERE CAT_GP_ID IN (SELECT CAT_DP_ID FROM CAT_DETALLES_PAQ WHERE CAT_DP_IDPROD NOT IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD))") - -' StartActivity(colonia) - B4XPages.ShowPage("Clientes") - -End Sub - - - -Sub Subir_Click - Awake.KeepAlive(True) - CARGA = "SUBIR" - P1.Visible = True - trabajar.Visible = False - B_PROXIMA.Visible =False - Btn_UbicarR.Visible=False - - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - Subir.Visible=False - SUBIR_P.Visible = False - - cargar.Visible=False - L_P_1.Visible = False - S_CC.Visible = False - L_P_3.Visible = False - S_CH.Visible = False - PB1.Visible = False - Resumen.Visible= False - PORCENTAJE = 0 - - L_P_2.Text = "Envio de Pedidos" - L_P_3.Text = "Envio de Pedidos" - S_CH.Text = "EN PROCESO" - S_CP.Text = "EN PROCESO" - PB1.Progress = 0 - PB2.Progress = 0 - PB2.Visible = True - conteo = 0 - 'i_gif.Visible = True -' load_gif - - PASO = 1 - 'End If - If PASO =1 Then - E1=skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("ABORDO")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - - c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("ABORDO")) - c.Position = 0 - L_ABORDO.Text = c.GetString("MONTO_DIA") - c.Close - Else - L_ABORDO.Text = 0 - End If - E1.Close - - - - c=skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - PERFIL = c.GetString("CUANTOS") - c.Close - - If PERFIL > 0 Then - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - PERFIL = c.GetString("CAT_VA_VALOR") - c.Close - End If - - c=skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("NUMERO_PEDIDO")) - c.Position =0 - Cuantos = c.GetString("CUANTOS") - c.Close - If Cuantos > 0 Then - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("NUMERO_PEDIDO")) - c.Position =0 - NUMERO_PEDIDO = c.GetString("CAT_VA_VALOR") - c.Close - Else - NUMERO_PEDIDO = 0 - End If - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") - - c=skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c.Close - d3=skmt.ExecQuery("SELECT SUM(PE_COSTO_TOT) as MONTO FROM PEDIDO") - d3.Position = 0 - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="UPDATE_INFO_E_DURK" - cmd.Parameters = Array As Object(d3.GetDouble("MONTO")- L_ABORDO.text, L_ABORDO.Text, d3.GetDouble("MONTO"),l_ruta.TEXT, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="insert_drop2_DUR" - cmd.Parameters = Array As Object(usuario,l_ruta.Text,fecha, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO", ALMACEN, L_VENTA.Text, L_PREVENTA.Text, L_ABORDO.Text, l_cambios.TEXT) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - d3.Close - ' PEDIO_CLIENTE - c=skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN FROM PEDIDO_CLIENTE ") - d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedidos_DUR" - cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"),ALMACEN,l_ruta.text,C.GetString("PC_COSTO_SIN") ) - reqManager.ExecuteQuery(cmd , 0,"ins_pedidos") - - Next - c.Close - End If - d.Position=0 - cuantos_pedidosc = D.GetString("CUANTOS_PEDIDOSC") - d.Close - - c=skmt.ExecQuery("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT FROM kmt_info") - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_QR_DUR" - cmd.Parameters = Array As Object(C.GetString("CAT_CL_NUM_SERIEFISICO"),C.GetString("CAT_CL_CODIGO"),C.GetString("CAT_CL_LONG"),C.GetString("CAT_CL_LAT"),ALMACEN,l_ruta.text ) - reqManager.ExecuteQuery(cmd , 0,"ins_QR") - - Next - c.Close - End If - - c=skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") - ' S_CP.Text = "Envio Encuesta" - ' PB2.Progress = 1 - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_encuesta_DUR" - cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO"),l_ruta.Text ) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - - - Next - - End If - c.Close - ' PEDIO - - skmt.ExecNonQuery("update PEDIDO set PE_FOLIO = rowid ") - - ' -' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FOLIO")) -' c.Position =0 - ' armafolio = l_ruta.text * 1000000 -' armafolio = armafolio + c.GetString("CAT_VA_VALOR") -' c.Close -' c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC,PE_TIPO FROM PEDIDO WHERE PE_FOLIO IS NULL") -' -' -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' skmt.ExecNonQuery2("update PEDIDO set PE_FOLIO = ? where PE_PROID = ? AND PE_CLIENTE =? AND PE_FECHA =? AND PE_FOLIO IS NULL ", Array As Object(armafolio, c.GetString("PE_PROID"), c.GetString("PE_CLIENTE"),c.GetString("PE_FECHA"))) - ' -' armafolio = armafolio + 1 -' -' Next -' c.Close -' End If - ' armafolio = armafolio - (l_ruta.Text * 1000000) - ' skmt.ExecNonQuery2("update CAT_VARIABLES set CAT_VA_VALOR = ? where CAT_VA_DESCRIPCION = ? ", Array As Object(armafolio,"FOLIO")) -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "update_folio" -' cmd.Parameters = Array As Object(armafolio,l_ruta.Text , "1") -' reqManager.ExecuteQuery(cmd , 0, "folio") - - - If PERFIL = "V-ESPECIAL" Then - - - c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO,PE_TIPO FROM PEDIDO ORDER BY PE_CLIENTE") - d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") - d.Position=0 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedido_esp_DUR" - cmd.Parameters = Array As Object(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"), c.GetString("PE_TIPO"),NUMERO_PEDIDO ) - reqManager.ExecuteQuery(cmd , 0, "ins_pedido") - Next - c.Close - End If - Else - c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO,PE_TIPO FROM PEDIDO") - d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") - d.Position=0 - TIEMPO = 0 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - TIEMPO = TIEMPO + 1 - - If TIEMPO > 20 Then - If L_P_2.Text = "Envio de Pedidos" Then - L_P_2.Text = "Envio de Pedidos --" - else if L_P_2.Text = "Envio de Pedidos --" Then - L_P_2.Text = "Envio de Pedidos \" - else if L_P_2.Text = "Envio de Pedidos \" Then - L_P_2.Text = "Envio de Pedidos |" - else if L_P_2.Text = "Envio de Pedidos |" Then - L_P_2.Text = "Envio de Pedidos /" - else if L_P_2.Text = "Envio de Pedidos /" Then - L_P_2.Text = "Envio de Pedidos --" - End If - T3.Initialize("T3", 2000) ' 1000 = 1 second - T3.Enabled = True - Wait For t3_tick - TIEMPO = 0 - - End If - conteo = conteo + 1 - cuantos_ped = D.GetString("CUANTOS_PEDIDO") - PORCENTAJE = 2 'Round(100/ (D.GetString("CUANTOS_PEDIDO") + 1)) - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedido_DUR" - cmd.Parameters = Array As Object(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"), c.GetString("PE_TIPO")) - reqManager.ExecuteQuery(cmd , 0, "ins_pedido") - - Next - c.Close - End If - - End If - - cuantos_pedido = D.GetString("CUANTOS_PEDIDO") - d.Close - - ' NOVENTA - c=skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA") - D=skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_noventa_DUR" - cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), ALMACEN, l_ruta.Text) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - - Next - c.Close - End If - d.Position=0 - cuantos_noventa = D.GetString("CUANTOS_NOVENTA") - d.Close - - ' NOVENTA HIST_EXIBIDORES(CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR) - c=skmt.ExecQuery("SELECT CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR from HIST_EXIBIDORES") - D=skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM HIST_EXIBIDORES") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_HIST_EXIBIDORES_DUR" - cmd.Parameters = Array As Object(C.GetString("CAT_CL_CLIENTE"),C.GetString("CAT_CL_EXHIBIDOR"),C.GetString("CAT_CL_BEXHIBIDOR"),l_ruta.TEXT) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - - Next - c.Close - End If - d.Position=0 - cuantos_exib = D.GetString("CUANTOS_NOVENTA") - d.Close - - ' VERIFICACION -' c=skmt.ExecQuery("SELECT HVE_CLIENTE, HVE_IDPROD, HVE_EXISTENCIA FROM HIST_VERIFICACION") - -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_verificacion_DUR" -' cmd.Parameters = Array As Object(C.GetString("HVE_CLIENTE"),C.GetString("HVE_IDPROD"),C.GetString("HVE_EXISTENCIA")) -' reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - ' -' Next - ' c.Close - ' End If - ' - -' c=skmt.ExecQuery("select HGDATE, HGLAT, HGLON from HIST_GPS") -' -' -' '' HACER ESTO PARA EL FORANEO -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' 's=skmt.ExecQuery2("SELECT HIST_VI_IMAGEN FROM HIST_VISITAS WHERE HIST_VI_CREDITO =?", Array As String (c.GetString("HIST_VI_CREDITO"))) -' 's.Position =0 -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_gps_actual_DUR" -' cmd.Parameters = Array As Object(c.GetString("hgdate"),c.GetString("hglat"),c.GetString("hglon"),usuario ) -' 'cmd.Parameters = Array As Object(C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON") ) -' -' reqManager.ExecuteQuery(cmd , 0, "") -' -' - ' -' ' Dim cmd As DBCommand -' ' cmd.Initialize -' ' cmd.Name = "update_gps_actual_TKM" -' ' cmd.Parameters = Array As Object(C.GetString("HGLAT"),C.GetString("HGLON"),usuario ) -' ' reqManager.ExecuteQuery(cmd , 0, "inst_visitas") -' 'lv.AddTwoLines(c.GetString("HIST_VI_CREDITO"),c.GetString("HIST_VI_RESULTADO")) -' Next -' End If -' c.Close - ' DROP - - t1.Initialize("T1", 20000) ' 1000 = 1 second - t1.Enabled = True - - img2.Visible =True - ' ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) - If S_CP.Text = "SUBIENDO" Then - S_CP.Text = "VALIDANDO" - End If - End If -End Sub - -Sub cargar_Click - Log(SERVER) - CARGA = "CARGAR" - img2.Visible =True - L_P_1.Visible = True - S_CC.Visible = True - - P1.Visible = True - trabajar.Visible = False - B_PROXIMA.Visible =False - Btn_UbicarR.Visible=False - - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - L_P_3.Visible = True - S_CH.Visible = True - PB1.Visible = True - Resumen.Visible= False - - L_P_1.Text = "Catalogo de Clientes" - L_P_2.Text = "Catalogos de Productos" - L_P_3.Text = "Catalogos Historicos" - S_CC.Text = "EN PROCESO" - S_CH.Text = "EN PROCESO" - S_CP.Text = "EN PROCESO" - PB1.Progress = 0 - PB2.Progress = 0 - EJECUTANDO = 1 - - 'c=skmt.ExecQuery("CREATE TABLE kmt_info (pr_cd_credito NUMERIC,pr_cd_nombre TEXT,pr_cd_calle TEXT,pr_cd_numero TEXT,pr_cd_num_int TEXT,pr_cd_entrecalle1 TEXT,pr_cd_entrecalle2 TEXT,pr_cd_colonia TEXT,pr_cd_poblacion TEXT,pr_cd_edo TEXT,pr_cd_cp TEXT,pr_cd_zona TEXT,pr_cf_credito NUMERIC,pr_cf_saldotot NUMERIC,pr_cf_saldooper NUMERIC,pr_cf_saldof1 NUMERIC, pr_cf_penalizacion NUMERIC)") - TOPE = 0 - ' NUEVOS CLIENTE - - skmt.ExecNonQuery2("delete from kmt_info where substr(CAT_CL_CODIGO,1,1) <> ?", Array As Object ("N")) - skmt.ExecNonQuery("delete from cod_result") - skmt.ExecNonQuery("delete from hist_gest") - skmt.ExecNonQuery("delete from cat_gunaprod") - skmt.ExecNonQuery("delete from cat_gunaprod2") - - skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - skmt.ExecNonQuery("delete from telefonos") - skmt.ExecNonQuery("delete from HIST_VENTAS") - skmt.ExecNonQuery("delete from HIST_PROMOS") - skmt.ExecNonQuery("delete from HIST_CLIENTE_CANT_PROMOS") - skmt.ExecNonQuery("delete from PROMOS_COMP") - skmt.ExecNonQuery("delete from CAT_VERIFICACION") - skmt.ExecNonQuery("delete from LISTA_PRECIOS") - skmt.ExecNonQuery("delete from CAT_PRECIOS") - skmt.ExecNonQuery("delete from HIST_RMI") - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",0)) - skmt.ExecNonQuery("delete from HIST_EXIBIDORES") - skmt.ExecNonQuery("delete from CAT_EXHIBIDORES") - skmt.ExecNonQuery("delete from CAT_ENCUESTA_PREGUNTA") - - c=skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="insert_drop2_DUR" - 'cmd.Name = "UPDATE_DUR_ACTUALR2_GPS" - cmd.Parameters = Array As Object(usuario, e_ruta.Text,fecha, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"CARGO", ALMACEN, L_VENTA.Text, L_PREVENTA.Text, L_ABORDO.Text, l_cambios.TEXT) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - 'sql.UPDATE_DUR_ACTUALR2_GPS=UPDATE DURAKELO.CAT_RUTAS_REPARTO SET CAT_RR_MONTO_ACT = (?),CAT_RR_MRECH_ACT =(?),CAT_RR_VISIT_ACT =(?), CAT_RR_DEV_ACT =(?), CAT_RR_LAT_ACT =(?), CAT_RR_LONG_ACT =(?), CAT_RR_BAT_ACT =(?), CAT_RR_TT = (?), CAT_RR_MONTO = (?), CAT_RR_FECHA_ACT = SYSDATE WHERE CAT_RR_IDALMACEN = (?) And CAT_RR_RUTA = (?) - - 'cmd.Initialize - 'cmd.Name = "Select_count_clie" - 'reqManager.ExecuteQuery(cmd,0,"count_cli") - - cmd.Initialize - cmd.Name = "select_codigo_exhibidor" - 'cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "catalogo_exhibidor") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprod") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod2_DUR" - cmd.Parameters = Array As Object(ALMACEN, e_ruta.Text) - reqManager.ExecuteQuery(cmd , 0, "gunaprod2") - - cmd.Initialize - cmd.Name = "select_cat_paquetes_abordo_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodpa") - - cmd.Initialize - cmd.Name = "select_cat_paquetes_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodp") - - cmd.Initialize - cmd.Name = "select_cat_paquetess_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodps") - - cmd.Initialize - cmd.Name = "select_cat_detallepa_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "detallepaq") - - cmd.Initialize - cmd.Name = "select_cat_clientes_guna_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "kmt_datos") - - cmd.Initialize - cmd.Name = "select_hist_datos_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_datos") - - cmd.Initialize - cmd.Name = "select_hist_promos_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_promos") - - cmd.Initialize - cmd.Name = "select_hist_cliente_promos_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_cliente_promos") - - cmd.Initialize - cmd.Name = "select_promo_comp_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_comp_promos") - - ''' validar para que sirve esto ya que no esta en la base de datos. - - cmd.Initialize - cmd.Name = "select_verificacion_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "cat_verificacion") - - cmd.Initialize - cmd.Name = "select_fecha" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "fecha") - - cmd.Initialize - cmd.Name = "select_folio_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "folio") - - ' esto es para sacar el perfil y marcas del usuario - cmd.Initialize - cmd.Name = "select_perfil_DUR" - cmd.Parameters = Array As Object(usuario) - reqManager.ExecuteQuery(cmd , 0, "perfil") - - cmd.Initialize - cmd.Name = "select_marcas_DUR" - cmd.Parameters = Array As Object(usuario) - reqManager.ExecuteQuery(cmd , 0, "marcas") - - cmd.Initialize - cmd.Name = "select_precios_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "precios") - - cmd.Initialize - cmd.Name = "select_hist_rmi1_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_rmi") - - cmd.Initialize - cmd.Name = "select_hist_rmi2_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_rmi") - - cmd.Initialize - cmd.Name = "select_hist_rmi3_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_rmi") - - cmd.Initialize - cmd.Name = "select_hist_rmi4_DUR" - cmd.Parameters = Array As Object(e_ruta.text, ALMACEN,e_ruta.text, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "hist_rmi") - - cmd.Initialize - cmd.Name = "select_CAMBIOS_DUR" - 'cmd.Parameters = Array As Object( ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "cat_cambios") - - cmd.Initialize - cmd.Name = "select_SUCURSAL_DUR" - cmd.Parameters = Array As Object( ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "sucursal") - - cmd.Initialize - cmd.Name = "select_cat_encuesta_p_DUR" - cmd.Parameters = Array As Object( ALMACEN,e_ruta.text ) - reqManager.ExecuteQuery(cmd , 0, "carga_encuesta") - - ' c=skmt.ExecQuery("select HIST_VI_CREDITO, HIST_VI_PRODUCTO,HIST_VI_VISITADOR, HIST_VI_RESULTADO, HIST_VI_CODIGO, HIST_VI_PARENTESCO, HIST_VI_COMENTARIO, HIST_VI_DTEVISITA, HIST_VI_LONGITUD, HIST_VI_LATITUD, hist_vi_imagen, hist_vi_dprom, hist_vi_mprom from HIST_VISITAS") - ' If c.RowCount>0 Then - ' For i=0 To c.RowCount -1 - ' c.Position=i - ' foto1 = c.GetBlob("HIST_VI_IMAGEN") - ' - ' Dim cmd As DBCommand - ' cmd.Initialize - ' cmd.Name = "insert_gestion_plan" - ' cmd.Parameters = Array As Object(C.GetString("HIST_VI_CREDITO"),C.GetString("HIST_VI_PRODUCTO"),C.GetString("HIST_VI_VISITADOR"),C.GetString("HIST_VI_DTEVISITA"),C.GetString("HIST_VI_RESULTADO"),C.GetString("HIST_VI_CODIGO"),C.GetString("HIST_VI_COMENTARIO"),C.GetString("HIST_VI_PARENTESCO"),C.GetString("HIST_VI_LONGITUD"), C.GetString("HIST_VI_LATITUD"), foto1, c.GetString("HIST_VI_DPROM"),C.GetString("HIST_VI_MPROM")) - ' reqManager.ExecuteQuery(cmd , 0, "inst_visitas") - - 'lv.AddTwoLines(c.GetString("HIST_VI_CREDITO"),c.GetString("HIST_VI_RESULTADO")) - ' Next - ' End If - 'skmt.ExecNonQuery("DELETE FROM HIST_VISITAS") - - cargar.Visible = False - Subir.Visible = False - SUBIR_P.Visible = False - -' connecta.Visible = True - inv.Visible = False - - 'Dim cmd As DBCommand - 'cmd.Initialize - 'cmd.Name = "select_telefonos_riva" - 'cmd.Parameters = Array As Object(usuario) - 'reqManager.ExecuteQuery(cmd , 0, "telefonos") - - ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias" , True) -End Sub -Sub JobDone(Job As HttpJob) - If Job.Success = False Then - 'If Job.ErrorMessage <> "STREAM" Then - ' ToastMessageShow("Error: " & Job.ErrorMessage, True) - 'End If - If Job.ErrorMessage = "STREAM" Then - If CARGA = "SUBIR" Then - PB2.Progress = PB2.Progress + PORCENTAJE - - If S_CP.Text = "EN PROCESO" Then - S_CP.Text = "SUBIENDO" - End If - ' If PB2.Progress > 99 Then - ' S_CP.Text = "VALIDANDO" - ' End If - - If cuantos_ped = conteo Then - S_CP.Text = "VALIDANDO" - End If - End If - End If - Else - LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027 - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "kmt_datos" Then 'query tag - skmt.BeginTransaction - Try - S_CC.TEXT = "CARGANDO" - For Each records() As Object In RESULT.Rows - Dim CAT_CL_CODIGO As String = records(RESULT.Columns.Get("CAT_CL_CODIGO")) - Dim CAT_CL_RUTA As String = records(RESULT.Columns.Get("CAT_CL_RUTA")) - Dim CAT_CL_NOMBRE As String = records(RESULT.Columns.Get("CAT_CL_NOMBRE")) - Dim CAT_CL_ATIENDE1 As String = records(RESULT.Columns.Get("CAT_CL_ATIENDE1")) - Dim CAT_CL_ATIENTE2 As String = records(RESULT.Columns.Get("CAT_CL_ATIENTE2")) - Dim CAT_CL_TELEFONO As String = records(RESULT.Columns.Get("CAT_CL_TELEFONO")) - Dim CAT_CL_EMAIL As String = records(RESULT.Columns.Get("CAT_CL_EMAIL")) - Dim CAT_CL_CALLE As String = records(RESULT.Columns.Get("CAT_CL_CALLE")) - Dim CAT_CL_NOEXT As String = records(RESULT.Columns.Get("CAT_CL_NOEXT")) - Dim CAT_CL_NOINT As String = records(RESULT.Columns.Get("CAT_CL_NOINT")) - Dim CAT_CL_CALLE1 As String = records(RESULT.Columns.Get("CAT_CL_CALLE1")) - Dim CAT_CL_CALLE2 As String = records(RESULT.Columns.Get("CAT_CL_CALLE2")) - Dim CAT_CL_COLONIA As String = records(RESULT.Columns.Get("CAT_CL_COLONIA")) - Dim CAT_CL_MUNI As String = records(RESULT.Columns.Get("CAT_CL_MUNI")) - Dim CAT_CL_EDO As String = records(RESULT.Columns.Get("CAT_CL_EDO")) - Dim CAT_CL_CP As String = records(RESULT.Columns.Get("CAT_CL_CP")) - Dim CAT_CL_LONG As String = records(RESULT.Columns.Get("CAT_CL_LONG")) - Dim CAT_CL_LAT As String = records(RESULT.Columns.Get("CAT_CL_LAT")) - Dim CAT_CL_MTOCOMPRA As String = records(RESULT.Columns.Get("CAT_CL_MTOCOMPRA")) - Dim CAT_CL_NUM_SERIEFISICO As String = records(RESULT.Columns.Get("CAT_CL_NUM_SERIEFISICO")) - Dim CAT_CL_BFACTURA As String = records(RESULT.Columns.Get("CAT_CL_BFACTURA")) - Dim CAT_CL_BCREDITO As String = records(RESULT.Columns.Get("CAT_CL_BBLOQUEOCRED")) - - skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO)) - Next - skmt.TransactionSuccessful - Catch - Log(LastException) - ToastMessageShow(LastException, True) - End Try - skmt.EndTransaction - skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,0) ",Array As Object ("0",e_ruta.TEXT, "VENTA ABORDO","null","null","null","null","null","null","null","null","null","null","null","null","null","null","null","NULL","NULL")) - Listo1 = 1 - S_CC.Text = "LISTO" - ' ToastMessageShow("Catalogo Clientes Actualizados." , True) - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - End If - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_promos" Then 'query tag - skmt.BeginTransaction - Try - For Each records() As Object In RESULT.Rows - Dim HP_CLIENTE As String = records(RESULT.Columns.Get("HP_CLIENTE")) - Dim HP_CODIGO_PROMOCION As String = records(RESULT.Columns.Get("HP_CODIGO_PROMOCION")) - - skmt.ExecNonQuery2("INSERT INTO HIST_PROMOS(HP_CLIENTE, HP_CODIGO_PROMOCION) VALUES (?,?)", Array As Object (HP_CLIENTE, HP_CODIGO_PROMOCION)) - Next - 'ToastMessageShow("Historico Promociones Actualizado." , True) - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 50 - ELSE IF PB1.Progress = 50 Then - PB1.Progress = 80 - ELSE If PB1.Progress = 80 Then - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If - Catch - Log(LastException) - ToastMessageShow(LastException, True) - End Try - skmt.EndTransaction - End If - End If - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "catalogo_exhibidor" Then 'query tag - skmt.BeginTransaction - Try - For Each records() As Object In RESULT.Rows - Dim CAT_EX_ID As String = records(RESULT.Columns.Get("CAT_EX_ID")) - Dim CAT_EX_TIPO As String = records(RESULT.Columns.Get("CAT_EX_TIPO")) - Dim CAT_EX_VALOR As String = records(RESULT.Columns.Get("CAT_EX_VALOR")) - - skmt.ExecNonQuery2("INSERT INTO CAT_EXHIBIDORES(CAT_EX_ID, CAT_EX_TIPO, CAT_EX_VALOR) VALUES (?,?,?)", Array As Object (CAT_EX_ID, CAT_EX_TIPO, CAT_EX_VALOR)) - Next - ' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True) - Catch - Log(LastException) - ToastMessageShow(LastException, True) - End Try - skmt.EndTransaction - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_cliente_promos" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim HCCP_CLIENTE As String = records(RESULT.Columns.Get("HCCP_CLIENTE")) - Dim HCCP_PROMO As String = records(RESULT.Columns.Get("HCCP_PROMO")) - Dim HCCP_CANT As String = records(RESULT.Columns.Get("HCCP_CANT")) - - skmt.ExecNonQuery2("INSERT INTO HIST_CLIENTE_CANT_PROMOS(HCCP_CLIENTE, HCCP_PROMO, HCCP_CANT) VALUES (?,?,?)", Array As Object (HCCP_CLIENTE, HCCP_PROMO,HCCP_CANT)) - Next - ' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True) - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_comp_promos" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CAT_PA_ID As String = records(RESULT.Columns.Get("CAT_PA_ID")) - Dim CAT_PA_MAXPROM As String = records(RESULT.Columns.Get("CAT_PA_MAXPROM")) - Dim CAT_PA_MAXPROMREC As String = records(RESULT.Columns.Get("CAT_PA_MAXPROMREC")) - Dim CAT_PA_MAXPROMCLIE As String = records(RESULT.Columns.Get("CAT_PA_MAXPROMCLIE")) - - skmt.ExecNonQuery2("INSERT INTO PROMOS_COMP(CAT_PA_ID, CAT_PA_MAXPROM, CAT_PA_MAXPROMREC, CAT_PA_MAXPROMCLIE) VALUES (?,?,?,?)", Array As Object (CAT_PA_ID, CAT_PA_MAXPROM,CAT_PA_MAXPROMREC,CAT_PA_MAXPROMCLIE)) - Next - - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 50 - ELSE IF PB1.Progress = 50 Then - PB1.Progress = 80 - ELSE If PB1.Progress = 80 Then - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "cat_verificacion" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD")) - Dim CAT_VE_NOMBRE As String = records(RESULT.Columns.Get("CAT_VE_NOMBRE")) - Dim CAT_VE_ORDEN As String = records(RESULT.Columns.Get("CAT_VE_ORDEN")) - - skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprod" Then 'query tag - S_CP.Text = "CARGANDO" - For Each records() As Object In RESULT.Rows - - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - Dim CAT_GP_INICIATIVA As Int = records(RESULT.Columns.Get("CAT_GP_INICIATIVA")) - 'CAT_GP_INICIATIVA = 5 - ' - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,CAT_GP_DEV)) - - Next - ' c=skmt.ExecQuery("select CAT_GP_CLASIF, COUNT(*) AS CUANTOS from CAT_GUNAPROD GROUP BY CAT_GP_CLASIF order by CAT_GP_CLASIF asc") - ' c.Position=0 - ' skmt.ExecNonQuery("DELETE FROM COUNT_GUNAPROD") - ' skmt.ExecNonQuery2("INSERT INTO COUNT_GUNAPROD(CAT_GP_CLASIF, CUANTOS) VALUES (?,?)", Array As Object (c.GetString("CAT_GP_CLASIF"), c.GetString("CUANTOS"))) - ' c.Close - - Listo2=1 - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - - - ' ToastMessageShow("Productos Actualizados." , True) - - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - - End If - - End If - End If - - ' CARGA DEL CATALOGO ABORDO - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprod2" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - Dim CAT_GP_INICIATIVA As Int = records(RESULT.Columns.Get("CAT_GP_INICIATIVA")) - Dim CAT_GP_CODPROMO As String = records(RESULT.Columns.Get("CAT_GP_CODPROMO")) - 'CAT_GP_INICIATIVA = 5 - ' skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_DEV)) - skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD, CAT_GP_INICIATIVA,CAT_GP_DEV,CAT_GP_CODPROMO)) - Next - c=skmt.ExecQUERY2("SELECT COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_TIPO = ?", Array As String ("VENTA")) - c.Position = 0 - cuantos_pedidosc = c.GetString("CUANTOS") - c.Close - If cuantos_pedidosc > 0 Then - c=skmt.ExecQUERY2("SELECT PE_PROID, PE_CANT FROM PEDIDO WHERE PE_TIPO = ?", Array As String ("VENTA")) - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("update CAT_GUNAPROD2 set CAT_GP_ALMACEN = CAT_GP_ALMACEN - ? where CAT_GP_ID = ? ", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID"))) - Next - End If - End If - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprodpa" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) -' Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD2(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD,"0")) - Next - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - ' ToastMessageShow("Promociones Actualizados." , True) - Listo4=1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - End If - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprodp" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) -' Dim CAT_GP_DEV As String = records(RESULT.Columns.Get("CAT_GP_DEV")) - skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD,CAT_GP_DEV,CAT_GP_CODPROMO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD,"0")) - Next - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - ' ToastMessageShow("Promociones Actualizados." , True) - Listo4=1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - End If - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "gunaprodps" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE")) - Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1")) - Dim CAT_GP_IMP2 As String = records(RESULT.Columns.Get("CAT_GP_IMP2")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_CLASIF As String = records(RESULT.Columns.Get("CAT_GP_CLASIF")) - Dim CAT_GP_STS As String = records(RESULT.Columns.Get("CAT_GP_STS")) - Dim CAT_GP_TIPO As String = records(RESULT.Columns.Get("CAT_GP_TIPO")) - Dim CAT_GP_SUBTIPO As String = records(RESULT.Columns.Get("CAT_GP_SUBTIPO")) - Dim CAT_GP_IMG() As Byte = records(RESULT.Columns.Get("CAT_GP_IMG")) - Dim CAT_GP_ALMACEN As Int = records(RESULT.Columns.Get("CAT_GP_ALMACEN")) - Dim CAT_GP_TIPOPROD As Int = records(RESULT.Columns.Get("CAT_GP_TIPOPROD")) - skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_TIPOPROD) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG, CAT_GP_ALMACEN,CAT_GP_TIPOPROD)) - Next - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - 'ToastMessageShow("Promociones especiales Actualizados." , True) - Listo4=1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - End If - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "fechat" Then 'query tag - For Each records() As Object In RESULT.Rows - Dim FECHA_HOY As String = records(RESULT.Columns.Get("FECHA")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",FECHA_HOY)) - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "detallepaq" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CAT_DP_ALMACEN As String = records(RESULT.Columns.Get("CAT_DP_ALMACEN")) - Dim CAT_DP_ID As String = records(RESULT.Columns.Get("CAT_DP_ID")) - Dim CAT_DP_IDPROD As String = records(RESULT.Columns.Get("CAT_DP_IDPROD")) - Dim CAT_DP_TIPO As String = records(RESULT.Columns.Get("CAT_DP_TIPO")) - Dim CAT_DP_PZAS As String = records(RESULT.Columns.Get("CAT_DP_PZAS")) - Dim CAT_DP_USUARIO As String = records(RESULT.Columns.Get("CAT_DP_USUARIO")) - Dim CAT_DP_FECHA As String = records(RESULT.Columns.Get("CAT_DP_FECHA")) - Dim CAT_DP_REGALO As String = records(RESULT.Columns.Get("CAT_DP_REGALO")) - Dim CAT_DP_CLASIF As String = records(RESULT.Columns.Get("CAT_DP_CLASIF")) - Dim CAT_DP_PRECIO As String = records(RESULT.Columns.Get("CAT_DP_PRECIO")) - Dim CAT_DP_PRECIO_SIMPTOS As String = records(RESULT.Columns.Get("CAT_DP_PRECIO_SIMPTOS")) - - - - - skmt.ExecNonQuery2("INSERT INTO CAT_DETALLES_PAQ(CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS)) - - - Next - - If PB2.Progress = 0 Then - PB2.Progress = 30 - S_CP.Text = "CARGANDO" - ELSE If PB2.Progress = 30 Then - PB2.Progress = 60 - ELSE IF PB2.Progress = 60 Then - PB2.Progress = 80 - ELSE IF PB2.Progress = 80 Then - PB2.Progress = 100 - S_CP.Text = "LISTO" - End If - Listo3 =1 - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - Else If Listo4 = 1 And Listo3 = 1 And inve = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - End If - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_datos" Then 'query tag - - For Each records() As Object In RESULT.Rows - - Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE")) - Dim HVD_PRONOMBRE As String = records(RESULT.Columns.Get("HVD_PRONOMBRE")) - Dim HVD_CANT As String = records(RESULT.Columns.Get("HVD_CANT")) - Dim HVD_COSTO_TOT As String = records(RESULT.Columns.Get("HVD_COSTO_TOT")) - Dim HVD_FECHA As String = records(RESULT.Columns.Get("HVD_FECHA")) - skmt.ExecNonQuery2("INSERT INTO HIST_VENTAS(HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT, HVD_FECHA) VALUES (?,?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_CANT,HVD_COSTO_TOT,HVD_FECHA)) - - - Next - Listo3 =1 - - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 50 - ELSE IF PB1.Progress = 50 Then - PB1.Progress = 80 - ELSE If PB1.Progress = 80 Then - - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If - - ' ToastMessageShow("Venta historico Actualizado." , True) - - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - - End If - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "carga_encuesta" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CAT_EP_ID As String = records(RESULT.COLUMNS.GET("CAT_EP_ID")) - Dim CAT_EP_IDTIPOPREGUNTA As String = records(RESULT.COLUMNS.GET("CAT_EP_IDTIPOPREGUNTA")) - Dim CAT_CE_DESCRIPCION As String = records(RESULT.COLUMNS.GET("CAT_CE_DESCRIPCION")) - Dim CAT_EP_PREGUNTA As String = records(RESULT.COLUMNS.GET("CAT_EP_PREGUNTA")) - Dim CAT_EP_RES1_PRED As String = records(RESULT.COLUMNS.GET("CAT_EP_RES1_PRED")) - Dim CAT_EP_RES2_PRED As String = records(RESULT.COLUMNS.GET("CAT_EP_RES2_PRED")) - Dim CAT_EP_RES3_PRED As String = records(RESULT.COLUMNS.GET("CAT_EP_RES3_PRED")) - Dim CAT_EP_ORDEN_PREGUNTA As String = records(RESULT.COLUMNS.GET("CAT_EP_ORDEN_PREGUNTA")) - - - skmt.ExecNonQuery2("INSERT INTO CAT_ENCUESTA_PREGUNTA (CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA ) VALUES (?,?,?,?,?,?,?,?)", Array As Object (CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA)) - - - - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "hist_rmi" Then 'query tag - - For Each records() As Object In RESULT.Rows - - Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE")) - Dim HVD_PRONOMBRE As String = records(RESULT.Columns.Get("HVD_PRONOMBRE")) - Dim HVD_CANT As String = records(RESULT.Columns.Get("HVD_CANT")) - Dim HVD_PROID As String = records(RESULT.Columns.Get("HVD_PROID")) - skmt.ExecNonQuery2("INSERT INTO HIST_RMI(HR_CLIENTE,HR_PRONOMBRE,HR_PROID, HR_CANT) VALUES (?,?,?,?)", Array As Object (HVD_CLIENTE,HVD_PRONOMBRE,HVD_PROID, HVD_CANT)) - - - Next - Listo3 =1 - - If PB1.Progress = 0 Then - PB1.Progress = 30 - S_CH.Text = "CARGANDO" - ELSE If PB1.Progress = 30 Then - PB1.Progress = 50 - ELSE IF PB1.Progress = 50 Then - PB1.Progress = 80 - ELSE If PB1.Progress = 80 Then - - PB1.Progress = 100 - S_CH.Text = "LISTO" - End If - - 'ToastMessageShow("Venta historico Actualizado." , True) - - If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then - B4XPage_Appear - img2.Visible=False - EJECUTANDO=0 - - End If - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "variables" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim Cat_Va_Descripcion As String = records(RESULT.Columns.Get("CAT_VA_DESCRIPCION")) - Dim Cat_Va_Valor As String = records(RESULT.Columns.Get("CAT_VA_VALOR")) - - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object (Cat_Va_Descripcion, Cat_Va_Valor)) - - - Next - End If - End If - - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedido" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP")) - - If cuantos_pedido < = CUANTOSP Then - ' ToastMessageShow("rojo val ok 1 cuantosp." , True) - datos_iguales = "ok" - S_CP.Text = "INFO OK" - i_gif.Visible = False - Else - ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True) - S_CP.Text = "ENVIAR DATOS (K-2)" - End If - - - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_pedidoc" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CUANTOSC As Int = records(RESULT.Columns.Get("CUANTOSC")) - - If cuantos_pedidosc = CUANTOSC Then - ' ToastMessageShow("rojo val ok 1 cuantosp." , True) - datos_iguales = "ok" - Else - ToastMessageShow("No se cargo bien la info C. Sync Nuevamente" & CUANTOSC & " " & cuantos_pedidosc, True) - - End If - - - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "valida_noventa" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CUANTOSN As Int = records(RESULT.Columns.Get("CUANTOSN")) - - If cuantos_noventa = CUANTOSN Then - ' ToastMessageShow("rojo val ok 1 cuantosp." , True) - datos_iguales = "ok" - Else - ToastMessageShow("No se cargo bien la info N. Sync Nuevamente" & CUANTOSN & " " & cuantos_noventa, True) - - End If - - - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "ins_pedido" Then 'query tag - For Each records() As Object In RESULT.Rows - PB2.Progress = PB2.Progress + 5 - '' S_CP.Text = "SUBIENDO" - Next - PB2.Progress = 100 - S_CP.Text = "LISTO" - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "version" Then 'query tag - For Each records() As Object In RESULT.Rows - skmt.ExecNonQuery("delete from VERSION") - Dim CAT_VE_VERSION As String = records(RESULT.Columns.Get("CAT_VE_VERSION")) - - skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION)) - - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "count_cli" Then 'query tag - For Each records() As Object In RESULT.Rows - COUNT_CLIE = records(RESULT.Columns.Get("COUNT_CLIE")) - Next - End If - End If - '' PEDIDO - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "pedido_env" Then 'query tag - skmt.ExecNonQuery("delete from telefonos") - - For Each records() As Object In RESULT.Rows - Dim FOLIO_PE As String = records(RESULT.Columns.Get("FOLIO")) - skmt.ExecNonQuery2("INSERT INTO telefonos (PR_CD_CREDITO) VALUES (?)", Array As Object (FOLIO_PE)) - Next - PASO_info = 1 - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "ruta" Then 'query tag - -' cargar.Visible = True -' Subir.Visible = True -' SUBIR_P.Visible = True -' inv.Visible = True -' connecta.Visible = False -' If conn = "1" Then -' ToastMessageShow("Existe Conexión con el Servidor." , True) -' End If - - For Each records() As Object In RESULT.Rows - Dim VALIDO As String = records(RESULT.Columns.Get("VALIDO")) - If VALIDO = "OK" Then - cargar.Visible = True - Subir.Visible = True - SUBIR_P.Visible = True - inv.Visible = True - connecta.Visible = False - If conn = "1" Then - ToastMessageShow("Existe Conexión con el Servidor." , True) - End If - Else - cargar.Visible = False - Subir.Visible = False - SUBIR_P.Visible = False - inv.Visible = False - connecta.Visible = False - End If - Next - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "usuario" Then 'query tag - - For Each records() As Object In RESULT.Rows - Dim name2 As String = records(RESULT.Columns.Get("VALIDO")) - - - Next - If name2 = "OK" Then - PASO = 1 - End If - P1.Visible = False - End If - End If - - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "fecha" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim FECHA_HOY As String = records(RESULT.Columns.Get("FECHA")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",FECHA_HOY)) - - Next - - End If - End If - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "folio" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim FOLIO As String = records(RESULT.Columns.Get("FOLIO")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FOLIO")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO)) - - Next - - End If - End If - 'perfil - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "perfil" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim PERFIL As String = records(RESULT.Columns.Get("PERFIL")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("PERFIL")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("PERFIL",PERFIL)) - - Next - - End If - End If - ' marcas - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "marcas" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim MARCAS As String = records(RESULT.Columns.Get("MARCAS")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MARCAS")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MARCAS",MARCAS)) - - Next - - End If - End If - ' SUCURSAL - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "sucursal" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim SUCURSAL As String = records(RESULT.Columns.Get("SUCURSAL")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SUCURSAL")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SUCURSAL",SUCURSAL)) - - Next - - End If - End If - ' cambios - - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "cat_cambios" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CAMBIOS As String = records(RESULT.Columns.Get("CAT_VA_VALOR")) - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("CAMBIOS")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CAMBIOS",CAMBIOS)) - - Next - - End If - End If - - ' precios - If Job.JobName = "DBRequest" Then - Dim RESULT As DBResult = reqManager.HandleJob(Job) - If RESULT.Tag = "precios" Then 'query tag - For Each records() As Object In RESULT.Rows - - Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID")) - Dim CAT_GP_PRECIO As String = records(RESULT.Columns.Get("CAT_GP_PRECIO")) - Dim CAT_GP_PRECIO1 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO1")) - Dim CAT_GP_PRECIO2 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO2")) - Dim CAT_GP_PRECIO3 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO3")) - Dim CAT_GP_PRECIO4 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO4")) - Dim CAT_GP_PRECIO5 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO5")) - Dim CAT_GP_PRECIO6 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO6")) - Dim CAT_GP_PRECIO7 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO7")) - Dim CAT_GP_PRECIO8 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO8")) - Dim CAT_GP_PRECIO9 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO9")) - Dim CAT_GP_PRECIO10 As String = records(RESULT.Columns.Get("CAT_GP_PRECIO10")) - - - skmt.ExecNonQuery2("INSERT INTO CAT_PRECIOS(CAT_GP_ID,CAT_GP_PRECIO, CAT_GP_PRECIO1,CAT_GP_PRECIO2,CAT_GP_PRECIO3,CAT_GP_PRECIO4,CAT_GP_PRECIO5,CAT_GP_PRECIO6,CAT_GP_PRECIO7,CAT_GP_PRECIO8,CAT_GP_PRECIO9, CAT_GP_PRECIO10) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_PRECIO, CAT_GP_PRECIO1,CAT_GP_PRECIO2,CAT_GP_PRECIO3,CAT_GP_PRECIO4,CAT_GP_PRECIO5,CAT_GP_PRECIO6,CAT_GP_PRECIO7,CAT_GP_PRECIO8,CAT_GP_PRECIO9,CAT_GP_PRECIO10)) - - Next - skmt.ExecNonQuery("delete from LISTA_PRECIOS") - skmt.ExecNonQuery(" insert into LISTA_PRECIOS(PRECIO, CAT_GP_ID, NLISTA) select cat_gp_precio as precio, cat_gp_id, '1' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO1 As precio, CAT_GP_ID, '2' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO2 As precio, CAT_GP_ID, '3' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO3 As precio, CAT_GP_ID, '4' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO4 As precio, CAT_GP_ID, '5' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO5 As precio, CAT_GP_ID, '6' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO6 As precio, CAT_GP_ID, '7' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO7 As precio, CAT_GP_ID, '8' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO8 As precio, CAT_GP_ID, '9' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO9 As precio, CAT_GP_ID, '10' as NLISTA from CAT_PRECIOS union Select CAT_GP_PRECIO10 As precio, CAT_GP_ID, '11' as NLISTA from CAT_PRECIOS") - - ' ToastMessageShow("LISTA DE PRECIOS OK LISTA DE PRECIOS OK", True) - End If - End If - - Job.Release - - End If - -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True - StartActivity(Main) - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub connecta_Click - ime.HideKeyboard - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "UPDATE_DURK_ACTUAL2_GPS" -' cmd.Parameters = Array As Object(L_MONTOD.Text, L_CUANTOST.Text, l_cuantosc.Text,l_porvisitar.TEXT,Main.lat_gps,Main.lon_gps,batterystatus(0),0, 0, 0,ALMACEN,l_ruta.Text ) -' reqManager.ExecuteCommand(cmd,"inst_visitas") - - connecta1 = connecta1 + 1 - imei = "" - conn = "1" - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_version_DUR" - reqManager.ExecuteQuery(cmd , 0, "version") - - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "select_ruta_DUR2" - cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei) - Log($"${ALMACEN},${e_ruta.text},${imei}"$) - reqManager.ExecuteQuery(cmd , 0, "ruta") - - If e_ruta.Text = "ROOT" Then - cargar.Visible = True - Subir.Visible = True - SUBIR_P.Visible = True - e_ruta.Text = "" - End If - ToastMessageShow("Validando Conexión." , True) -End Sub - -Sub BUSCA_Click -' StartActivity(BUSCAR) -End Sub - -Sub b_mapa_Click -' StartActivity(mapas) -End Sub - -Sub e_ruta_EnterPressed - If e_ruta.Text = "FIN DIA" Then - RES = Msgbox2("Seguro que desa hacer el cierre todos los datos se borraran?","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) - If RES = DialogResponse.POSITIVE Then - - e_ruta.Text = "" - skmt.ExecNonQuery("delete from pedido_cliente") - skmt.ExecNonQuery("delete from pedido") - skmt.ExecNonQuery("delete from noventa") - skmt.ExecNonQuery("delete from clie_act") - skmt.ExecNonQuery("delete from kmt_info") - skmt.ExecNonQuery("delete from cat_gunaprod") - skmt.ExecNonQuery("delete from cat_gunaprod2") - - skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - skmt.ExecNonQuery("delete from HIST_VENTAS") - skmt.ExecNonQuery("delete from HIST_VERIFICACION") - skmt.ExecNonQuery("delete from HIST_ENCUESTA") - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",0)) - - - - B4XPage_Appear - End If - End If - If e_ruta.Text = "HUGO" Then - trabajar.Visible = False - B_PROXIMA.Visible =False - Btn_UbicarR.Visible=False - - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - img3.Visible =True - Resumen.Visible= False - - End If - -End Sub -Sub inv_Click - img2.Visible =True - EJECUTANDO = 1 - inve = 1 - skmt.ExecNonQuery("delete from cat_gunaprod") - skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - - c=skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - - cmd.Initialize - cmd.Name = "select_cat_gunaprod_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprod") - - cmd.Initialize - cmd.Name = "select_cat_paquetes_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "gunaprodp") - - cmd.Initialize - cmd.Name = "select_cat_detallepa_DUR" - cmd.Parameters = Array As Object(ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "detallepaq") - - cargar.Visible = False - Subir.Visible = False - SUBIR_P.Visible = False - connecta.Visible = True - inv.Visible = False - ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias" , True) - -End Sub -Sub t1_tick - - cmd.Initialize - cmd.Name = "select_cuantos_pedido_DUR" - cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) - reqManager.ExecuteQuery(cmd , 0, "valida_pedido") - - T3.Initialize("T3", 5000) ' 1000 = 1 second - T3.Enabled = True - Wait For t3_tick - '' -' -' cmd.Initialize -' cmd.Name = "select_cuantos_noventa_DUR" -' cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) -' reqManager.ExecuteQuery(cmd , 0, "valida_noventa") -' -' cmd.Initialize -' cmd.Name = "select_cuantos_pedidoc_DUR" -' cmd.Parameters = Array As Object(ALMACEN,l_ruta.text) -' reqManager.ExecuteQuery(cmd , 0, "valida_pedidoc") -' - If PB2.Progress = 0 Then - S_CP.Text = "ENVIAR DATOS (K-1)" - End If - img2.Visible=False - t1.Enabled = False -End Sub -Sub B_OK_PAS_Click - - If CARGA = "SUBIR" And S_CP.Text = "INFO OK" Then - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - PERFIL = c.GetString("CAT_VA_VALOR") - c.Close - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("NUMERO_PEDIDO")) - c.Position =0 - NUMERO_PEDIDO = c.GetString("CAT_VA_VALOR") - c.Close - - If PERFIL = "V-ESPECIAL" Then - skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO")) - skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("NUMERO_PEDIDO",NUMERO_PEDIDO + 1)) - End If - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - Btn_UbicarR.Visible=True - - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - Else If CARGA = "SUBIR" And S_CP.Text = "ERROR" Then - Msgbox("Tiene que subir de nuevo la información","Atención") - P1.Visible = False - trabajar.Visible = True - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - - Else if CARGA = "SUBIR" And S_CP.Text <> "INFO OK" Then - RES = Msgbox2("Seguro que desa abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) - If RES = DialogResponse.POSITIVE Then - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - Btn_UbicarR.Visible=True - - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - ExitApplication - End If - - End If - - If CARGA = "CARGAR" And S_CP.Text = "LISTO" And S_CC.Text = "LISTO" And S_CH.Text = "LISTO" Then - - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - Btn_UbicarR.Visible=True - - - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - B4XPage_Appear - Else if CARGA = "CARGAR" And (S_CP.Text <> "LISTO" Or S_CC.Text <> "LISTO" Or S_CH.Text <> "LISTO") Then - RES = Msgbox2("Seguro que desa abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) - If RES = DialogResponse.POSITIVE Then - P1.Visible = False - trabajar.Visible = True - B_PROXIMA.Visible =True - Btn_UbicarR.Visible=True - - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - img2.Visible=False - skmt.ExecNonQuery("delete from kmt_info") - skmt.ExecNonQuery("delete from cod_result") - skmt.ExecNonQuery("delete from hist_gest") - skmt.ExecNonQuery("delete from cat_gunaprod") - skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") - skmt.ExecNonQuery("delete from telefonos") - skmt.ExecNonQuery("delete from HIST_VENTAS") - skmt.ExecNonQuery("delete from HIST_PROMOS") - skmt.ExecNonQuery("delete from HIST_CLIENTE_CANT_PROMOS") - skmt.ExecNonQuery("delete from PROMOS_COMP") - skmt.ExecNonQuery("delete from CAT_VERIFICACION") - ExitApplication - End If - - End If - - - '------------- - '------------- TODO ESTE CODIGO ES PARA CUANDO APLICAN DESUCENTOS. - ' - ' Dim cmd As DBCommand' -' cmd.Initialize -' cmd.Name = "select_usuario_guna_super_DUR" -' cmd.Parameters = Array As Object(USUARIO1.Text, CLAVE.Text) -' reqManager.ExecuteQuery(cmd , 0, "usuario") - 'If PASO = 1 Then - 'c=skmt.ExecQuery("select usuario from usuarioa") - '' c.Position = 0 -' usuario = c.GetString("USUARIO") -' c.Close - ' PEDIO_CLIENTE -' c=skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN FROM PEDIDO_CLIENTE ") -' d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ") -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_pedidos_DUR" -' cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"),ALMACEN,l_ruta.text,C.GetString("PC_COSTO_SIN") ) -' reqManager.ExecuteQuery(cmd , 0,"inst_pedidos") - ' -' Next -' c.Close -' End If -' d.Position=0 -' cuantos_pedidosc = D.GetString("CUANTOS_PEDIDOSC") -' d.Close -' -' ' PEDIO -' c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC FROM PEDIDO") -' d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") -' -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_pedido_DUR" -' cmd.Parameters = Array As Object(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")) -' reqManager.ExecuteQuery(cmd , 0, "ins_pedido") - ' -' Next -' c.Close -' End If -' d.Position=0 -' cuantos_pedido = D.GetString("CUANTOS_PEDIDO") -' d.Close -' -' ' NOVENTA -' c=skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA") -' D=skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA") -' -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "insert_noventa_DUR" -' cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), ALMACEN, l_ruta.Text) -' reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - ' -' Next -' c.Close -' End If -' d.Position=0 -' cuantos_noventa = D.GetString("CUANTOS_NOVENTA") -' d.Close -' -' ' DROP - ' - ' t1.Initialize("T1", 60000) ' 1000 = 1 second - ' t1.Enabled = True - 'Dim cmd As DBCommand - 'cmd.Initialize -' cmd.Name ="insert_drop_DUR" -' cmd.Parameters = Array As Object(usuario,l_ruta.Text,fecha, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text) -' reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - ' img2.Visible =True -' -' -' -' ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) - ' - 'USUARIO1.Text = "" - 'CLAVE.Text = "" - ' End If - ' -' Awake.KeepAlive(False) -End Sub - -Sub NUEVO_Click -' StartActivity(nuevocliente) -End Sub - -Sub B_OK_RES_Click - trabajar.Visible = True - B_PROXIMA.Visible =True - Btn_UbicarR.Visible=True - - NUEVO.Visible =True - BUSCA.Visible=True - connecta.Visible=True - Resumen.Visible= True - P_RESUMEN.Visible=False -End Sub - -Sub Resumen_Click - P_RESUMEN.Visible = True - trabajar.Visible = False - B_PROXIMA.Visible =False - Btn_UbicarR.Visible=False - - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - Subir.Visible=False - SUBIR_P.Visible = False - cargar.Visible=False - Resumen.Visible= False - - b=skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente where pc_cliente <> 0") - b.Position=0 - Cuantos = b.GetString("CUANTOS") - ToastMessageShow(Cuantos , True) - - d=skmt.ExecQuery("select count(*) as TOTAL_VISITAR from kmt_info where gestion = 0 and cat_cl_codigo <> 0") - D.Position=0 - b.Close - e=skmt.ExecQuery("select count(*) as POR_VISITAR from kmt_info where cat_cl_codigo <> 0") - e.Position=0 - f=skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info where cat_cl_codigo <> 0") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - If l_ruta.Text = 0 Then - l_ruta.Text =0 - Else - f=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - f.Position=0 - l_ruta.Text = f.GetString("CAT_CL_RUTA") - f.Close - End If - If Cuantos = 0 Then - L_MONTOD.Text =0 - l_cuantosc.Text = 0 - l_cuantosn.Text = 0 - drop = 0 - l_drop.Text = 0 - efectiva = 0 - l_efectiva.text =0 - l_ctast.Text = d.GetString("TOTAL_VISITAR") - l_porvisitar.Text = e.GetString("POR_VISITAR") - d.Close - e.Close - Else - C=skmt.ExecQuery2("select count(*) as CUANTOS FROM CAT_GUNAPROD WHERE CAT_GP_CLASIF = ? ", Array As String ("KELLOGGS")) - c.Position = 0 - Log("Cuantos=" & Cuantos) - If c.GetString("CUANTOS") > 0 Then - Log("Entramos") - ImageView12.Bitmap = LoadBitmap(File.DirAssets, "k.png") - c=skmt.ExecQuery2("select sum(pe_cant) as CAMBIOS from pedido where substr(pe_pronombre,1,6) = ?", Array As String("CAMBIO")) - c.Position = 0 - l_cambios.Text = c.GetString("CAMBIOS") - c.Close - c=skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2' union Select CAT_GP_ID from cat_gunaprod2 where CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2')") - c.Position = 0 - l_monto_k.Text = c.GetString("MONTO_DIA") - c.Close - c=skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where (CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2') And CAT_GP_TIPO = 'PRINGLES' union Select CAT_GP_ID from cat_gunaprod2 where (CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2') And CAT_GP_TIPO = 'PRINGLES')") - c.Position = 0 - l_monto_kp.Text = c.GetString("MONTO_DIA") - Log("Pringles=" & l_monto_kp.text) - If l_monto_kp.Text = "null" Then - l_monto_kp.Text = "0" - End If - c.Close - c=skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where (CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2') And CAT_GP_TIPO = 'SNACK' union Select CAT_GP_ID from cat_gunaprod2 where (CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2') And CAT_GP_TIPO = 'SNACK')") - c.Position = 0 - l_monto_ks.Text = c.GetString("MONTO_DIA") - c.Close - Log("Snacks=" & l_monto_ks.text) - c=skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where (CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2') And CAT_GP_TIPO = 'CEREAL' union Select CAT_GP_ID from cat_gunaprod2 where (CAT_GP_CLASIF = 'KELLOGGS' Or CAT_GP_CLASIF = 'KELLOGGS 2') And CAT_GP_TIPO = 'CEREAL')") - c.Position = 0 - l_monto_kc.Text = c.GetString("MONTO_DIA") - c.Close - Log("Cereal=" & l_monto_kc.text) - - Else - ImageView12.Bitmap = LoadBitmap(File.DirAssets, "unilever.jpg") - c=skmt.ExecQuery2("select sum(pe_cant) as CAMBIOS from pedido where substr(pe_pronombre,1,6) = ?", Array As String("CAMBIO")) - c.Position = 0 - l_cambios.Text = c.GetString("CAMBIOS") - c.Close - - c=skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_CLASIF = 'UNILEVER' union Select CAT_GP_ID from cat_gunaprod2 where CAT_GP_CLASIF = 'UNILEVER')") - c.Position = 0 - l_monto_k.Text = c.GetString("MONTO_DIA") - c.Close - - l_monto_kp.Text = "0" - l_monto_ks.Text = "0" - End If - - Log($"${l_monto_k.text}, ${l_monto_kp.text}, ${l_monto_ks.text}"$) - - E1=skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("VENTA")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - - c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("VENTA")) - c.Position = 0 - L_VENTA.Text = c.GetString("MONTO_DIA") - c.Close - Else - L_VENTA.Text = 0 - End If - E1.Close - - - E1=skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("PREVENTA")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - - c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("PREVENTA")) - c.Position = 0 - L_PREVENTA.Text = c.GetString("MONTO_DIA") - c.Close - Else - L_PREVENTA.Text = 0 - End If - E1.Close - - - E1=skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("ABORDO")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - - c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("ABORDO")) - c.Position = 0 - L_ABORDO.Text = c.GetString("MONTO_DIA") - c.Close - Else - L_ABORDO.Text = 0 - End If - E1.Close - -' c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where (CAT_GP_CLASIF = ? Or CAT_GP_CLASIF = ?) And CAT_GP_TIPO = ?)", Array As String("KELLOGGS", "KELLOGGS 2","SNACK")) -' c.Position = 0 -' l_monto_ks.Text = c.GetString("MONTO_DIA") -' c.Close - - c=skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente where pc_cliente <> 0") - b=skmt.ExecQuery("select count(*) as CUANTOS from noventa") - 'where pc_fecha = ?", Array As String(fecha) - C.Position=0 - b.Position=0 - L_MONTOD.Text = c.GetString("MONTO_DIA") - l_cuantosc.Text = c.GetString("CLIENTES_DIA") - l_cuantosn.Text = b.GetString("CUANTOS") - efectiva = c.GetString("CLIENTES_DIA") / e.GetString("POR_VISITAR") - l_efectiva.text = Round2(efectiva*100,2) - l_ctast.Text = d.GetString("TOTAL_VISITAR") - l_porvisitar.Text = e.GetString("POR_VISITAR") - L_CUANTOST.Text = l_cuantosc.Text + l_cuantosn.Text - drop = (c.GetString("CLIENTES_DIA") + b.GetString("CUANTOS"))/ d.GetString("TOTAL_VISITAR") - l_drop.Text = Round(drop * 100) - If l_drop.Text + l_efectiva.Text < 100 Then - ImageView3.Bitmap = LoadBitmap(File.DirAssets, "tache_rojo.png") - Else If l_drop.Text + l_efectiva.Text > = 100 And l_drop.Text + l_efectiva.Text < 130 Then - ImageView3.bitmap = LoadBitmap(File.DirAssets, "alerta_amarilla.png") - Else - ImageView3.Bitmap = LoadBitmap(File.DirAssets, "palomita_verde.png") - End If - L_TICKPROM.Text = Round2((c.GetString("MONTO_DIA") / c.GetString("CLIENTES_DIA")),2) - If c.GetString("MONTO_DIA") < 2500 Then - ImageView5.Bitmap = LoadBitmap(File.DirAssets, "tache_rojo.png") - Else if c.GetString("MONTO_DIA") > = 2500 And c.GetString("MONTO_DIA") < 4000 Then - ImageView5.bitmap = LoadBitmap(File.DirAssets, "alerta_amarilla.png") - Else - ImageView5.Bitmap = LoadBitmap(File.DirAssets, "palomita_verde.png") - End If - - c.Close - b.Close - End If - - -End Sub - -Sub B_PROXIMA_Click -' skmt.ExecNonQuery("delete from CUENTAA") -' skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object("0")) -' Main.tipov = "ABORDO" -'' StartActivity(colonia2) -End Sub - - - -Sub Timer_GIF1_Tick - Timer_GIF1.Enabled = False - Frame1 = Frame1 + 1 - If Frame1 >= gif1.FrameCount Then - Frame1 = 0 - End If - Timer_GIF1.Interval = gif1.Delay(Frame1) - i_gif.Bitmap = gif1.Frame(Frame1) - Timer_GIF1.Enabled = True -End Sub - -Sub load_gif - - gif1.DisposeFrames - - - gif1.Load(ruta, "espera.gif") - Frame1 = 0 - - - Timer_GIF1.Interval = gif1.Delay(Frame1) - i_gif.Bitmap = gif1.Frame(Frame1) - - Timer_GIF1.Initialize("TG", 40) ' 1000 = 1 second - - Timer_GIF1.Enabled = True - - - - gif1.SaveFrame(0, ruta, "frame1.png", "P", 85) - gif1.SaveFrame(0, ruta, "frame1.jpg", "J", 85) - -End Sub - -Sub VALIDA_INFO - - cmd.Initialize - cmd.Name = "select_datos_enviados_pe" - cmd.Parameters = Array As Object(ALMACEN, e_ruta.Text) - reqManager.ExecuteQuery(cmd , 0, "pedido_env") - PASO_info = 0 - - For I = 0 To 2 - T3.Initialize("T3", 8000) ' 1000 = 1 second - T3.Enabled = True - Wait For t3_tick - If PASO_info = 0 Then - I = 0 - End If - Next - -End Sub - - -Sub B_MARCAS_Click - Panel5.Visible = True - - pnlTitle.Visible = False - pnlTitle.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight + DividerHeight) - pnlTitle.LoadLayout("CellTitle") - c=skmt.ExecQuery("Select CAT_GP_CLASIF, SUM(TOTAL) AS TOTAL FROM TOTAL_MARCAS GROUP BY CAT_GP_CLASIF") - CLV1.Clear - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - AddTitle(c.GetString("CAT_GP_CLASIF")) - CLV1.AddTextItem("TOTAL VENTA Y PREVENTA = $" & c.GetString("TOTAL"),"1") - - Next - End If -End Sub -Sub AddTitle (Title As String) - Dim p_MARCAS As B4XView = xui.CreatePanel("") - p_MARCAS.SetLayoutAnimated(0, 0, 0, CLV1.AsView.Width, TitleHeight) - p_MARCAS.LoadLayout("CellTitle") - lblTitle.Text = Title - Dim td As TitleData - td.Title = Title - CLV1.Add(p_MARCAS, td) -End Sub - - -Sub B_OK_PANEL5_Click - Panel5.Visible = False - -End Sub - -Sub e_ruta_TextChanged (Old As String, New As String) - Dim validChars As String ="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 " - Try - If validChars.Contains(New.SubString(New.Length-1)) = False Then - e_ruta.Text = New.SubString2(0, New.Length-1) - e_ruta.SelectionStart = e_ruta.Text.Length - End If - Catch - Log(LastException) - End Try -End Sub - -Sub Btn_UbicarR_Click - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MARCAS")) - c.Position =0 - MARCASQ = c.GetString("CAT_VA_VALOR") - c.Close - skmt.ExecNonQuery("delete from CAT_GUNAPROD WHERE CAT_GP_CLASIF NOT IN (" & MARCASQ &")" ) - skmt.ExecNonQuery("delete from CAT_GUNAPROD WHERE CAT_GP_ID IN (SELECT CAT_DP_ID FROM CAT_DETALLES_PAQ WHERE CAT_DP_IDPROD NOT IN (SELECT CAT_GP_ID FROM CAT_GUNAPROD))") -' StartActivity(MAPA_RUTAS) -End Sub - -Sub SUBIR_P_Click - Awake.KeepAlive(True) - CARGA = "SUBIR" - P1.Visible = True - trabajar.Visible = False - B_PROXIMA.Visible =False - Btn_UbicarR.Visible=False - - NUEVO.Visible =False - BUSCA.Visible=False - connecta.Visible=False - Subir.Visible=False - SUBIR_P.Visible = False - - cargar.Visible=False - L_P_1.Visible = False - S_CC.Visible = False - L_P_3.Visible = False - S_CH.Visible = False - PB1.Visible = False - Resumen.Visible= False - - L_P_2.Text = "Envio de Pedidos" - L_P_3.Text = "Envio de Pedidos" - S_CH.Text = "EN PROCESO" - S_CP.Text = "EN PROCESO" - PB1.Progress = 0 - PB2.Progress = 0 - PB2.Visible = True - conteo = 0 - 'i_gif.Visible = True -' load_gif - - PASO = 1 - 'End If - If PASO =1 Then - E1=skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("ABORDO")) - E1.Position = 0 - If E1.GetString("CUANTOS") > 0 Then - - c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_TIPO = ?", Array As String("ABORDO")) - c.Position = 0 - L_ABORDO.Text = c.GetString("MONTO_DIA") - c.Close - Else - L_ABORDO.Text = 0 - End If - E1.Close - - - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)") - - c=skmt.ExecQuery("select usuario from usuarioa") - c.Position = 0 - usuario = c.GetString("USUARIO") - c.Close - d3=skmt.ExecQuery("SELECT SUM(PE_COSTO_TOT) as MONTO FROM PEDIDO") - d3.Position = 0 - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="UPDATE_INFO_E_DURK" - cmd.Parameters = Array As Object(d3.GetDouble("MONTO")- L_ABORDO.text, L_ABORDO.Text, d3.GetDouble("MONTO"),l_ruta.TEXT, ALMACEN) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - Dim cmd As DBCommand - cmd.Initialize - cmd.Name ="insert_drop2_DUR" - cmd.Parameters = Array As Object(usuario,l_ruta.Text,fecha, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO", ALMACEN, L_VENTA.Text, L_PREVENTA.Text, L_ABORDO.Text, l_cambios.TEXT) - reqManager.ExecuteQuery(cmd , 0, "inst_noventa") - d3.Close - cuantos_pedidosc = 0 - - - ' PEDIO - - skmt.ExecNonQuery("update PEDIDO set PE_FOLIO = rowid ") - - ' -' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FOLIO")) -' c.Position =0 - ' armafolio = l_ruta.text * 1000000 -' armafolio = armafolio + c.GetString("CAT_VA_VALOR") -' c.Close -' c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC,PE_TIPO FROM PEDIDO WHERE PE_FOLIO IS NULL") -' -' -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' skmt.ExecNonQuery2("update PEDIDO set PE_FOLIO = ? where PE_PROID = ? AND PE_CLIENTE =? AND PE_FECHA =? AND PE_FOLIO IS NULL ", Array As Object(armafolio, c.GetString("PE_PROID"), c.GetString("PE_CLIENTE"),c.GetString("PE_FECHA"))) - ' -' armafolio = armafolio + 1 -' -' Next -' c.Close -' End If - ' armafolio = armafolio - (l_ruta.Text * 1000000) - ' skmt.ExecNonQuery2("update CAT_VARIABLES set CAT_VA_VALOR = ? where CAT_VA_DESCRIPCION = ? ", Array As Object(armafolio,"FOLIO")) -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "update_folio" -' cmd.Parameters = Array As Object(armafolio,l_ruta.Text , "1") -' reqManager.ExecuteQuery(cmd , 0, "folio") - - - - c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO,PE_TIPO FROM PEDIDO WHERE PE_CLIENTE = 0") - d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO WHERE PE_CLIENTE = 0") - d.Position=0 - TIEMPO = 0 - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - TIEMPO = TIEMPO + 1 - - If TIEMPO > 20 Then - If L_P_2.Text = "Envio de Pedidos" Then - L_P_2.Text = "Envio de Pedidos --" - else if L_P_2.Text = "Envio de Pedidos --" Then - L_P_2.Text = "Envio de Pedidos \" - else if L_P_2.Text = "Envio de Pedidos \" Then - L_P_2.Text = "Envio de Pedidos |" - else if L_P_2.Text = "Envio de Pedidos |" Then - L_P_2.Text = "Envio de Pedidos /" - else if L_P_2.Text = "Envio de Pedidos /" Then - L_P_2.Text = "Envio de Pedidos --" - End If - T3.Initialize("T3", 2000) ' 1000 = 1 second - T3.Enabled = True - Wait For t3_tick - TIEMPO = 0 - - End If - conteo = conteo + 1 - cuantos_ped = D.GetString("CUANTOS_PEDIDO") - PORCENTAJE = 2 'Round(100/ (D.GetString("CUANTOS_PEDIDO") + 1)) - Dim cmd As DBCommand - cmd.Initialize - cmd.Name = "insert_pedido_DUR" - cmd.Parameters = Array As Object(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"), c.GetString("PE_TIPO")) - reqManager.ExecuteQuery(cmd , 0, "ins_pedido") - - Next - c.Close - End If - cuantos_pedido = D.GetString("CUANTOS_PEDIDO") - d.Close - t1.Initialize("T1", 20000) ' 1000 = 1 second - t1.Enabled = True - img2.Visible =True - ' ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) - If S_CP.Text = "SUBIENDO" Then - S_CP.Text = "VALIDANDO" - End If - End If -End Sub - -Sub b_e_resumen_Click -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "UPDATE_DURK_ACTUAL2_GPS" -' cmd.Parameters = Array As Object(L_MONTOD.Text, L_CUANTOST.Text, l_cuantosc.Text,l_porvisitar.TEXT,Main.lat_gps,Main.lon_gps,batterystatus(0),0, 0, 0,ALMACEN,l_ruta.Text ) -' reqManager.ExecuteCommand(cmd,"inst_visitas") -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_Productos.bas b/B4A - Copy/C_Productos.bas deleted file mode 100644 index ef40fbe..0000000 --- a/B4A - Copy/C_Productos.bas +++ /dev/null @@ -1,1113 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - '//Process Globals - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - ' Dim g As GPS - Dim ruta As String - Dim q_buscar As String - Dim skmt As SQL - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - Dim c As Cursor - Dim c2 As Cursor - Dim ListView1 As ListView - Dim entro As String - Dim lfila As Label - Dim marca As String - Dim tipo As String - Private BUSCA As EditText - Dim ya_entro As String - Dim bmp As Bitmap - - Dim c As Cursor - Dim e As Cursor - Dim f As Cursor - Dim h As Cursor - Dim CC As Cursor - Dim DD As Cursor - Dim l_tipo As Label - Dim l_sub As Label - Dim l_marca As Label - Dim l_desc As Label - Dim l_precio As Label - Dim l_bodega As Label - Dim cantidad As EditText - Dim guardar As Button - Dim Terminar As Button - Dim img_prod As ImageView - Dim IMG_PASO() As Byte - Dim L_PROID As Label - Dim clie_id As String - Dim sDate,sTime As String - Dim usuario As String -' Dim lat_gps, lon_gps As String - Dim t_venta As Label - Dim PROMO_C As String - Dim i_fotol As ImageView - Private DESC_PROMO As Button - Private nopromo As Button - Dim TOT_ART_PROMO As String - Dim cambio As String - Dim COSTO_TOT As String - Dim ALMACEN As String - Dim preciosin As String - Dim cl_ruta As String - Dim d As Cursor - Dim TOT_ART_PROMOR As String - Dim PROMO_CR As String - Dim TOTAL_PROMO As String - Dim HCCP_CANT As String - Private Panel1 As Panel - Dim query As String - Private t_precio As Label - Private LV_PRECIOS As ListView - Private PERFIL As String - Private EXISTE_CAMBIO As String - Private QUERY2 As String - Dim CAMBIOS As String - Dim precio2 As String - Dim PROMOS_VENTAS As String - -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - 'Do not forget to load the layout file created with the visual designer. For example: - 'Activity.LoadLayout("Layout1") - Root.RemoveAllViews - Root.LoadLayout("PRODUCTOS") - 'Dim ruta As String - ' valido donde escribo el archivo de la base de datos de kmt - ruta = File.DirInternal - Panel1.Visible= False - ' se crea o no el archivo de la base de ddatos de kmt - 'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE - 'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA - 'SI SE REGRESA A ESTE ACTIVIDAD. - If File.Exists(ruta, "kmt.db") = False Then - File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") - End If - skmt.Initialize(ruta,"kmt.db", True) -End Sub - -Sub B4XPage_Appear - If Main.tipov = "PREVENTA" Then - query = "cat_gunaprod" - QUERY2 = "COUNT_GUNAPROD" - Else IF Main.tipov = "VENTA" Then - query = "cat_gunaprod2" - QUERY2= " COUNT_GUNAPROD2" - ELSE IF Main.tipov = "ABORDO" Then - query = "cat_gunaprod" - QUERY2 = "COUNT_GUNAPROD" - Else - query = "cat_gunaprod" - QUERY2 = "COUNT_GUNAPROD" - ya_entro = 0 - End If - Log(Main.tipov) - If ya_entro <> "1" Then - 'BUSCA.Text ="" - 'SE COMENTO LA LINEA DE ARRIBA YA QUE DISPARA EL EVENTO DEL TEXTCHANGE Y PUEDE HACER LENTO EL SISTEMA - skmt.Initialize(ruta,"kmt.db", True) - entro ="1" - ya_entro ="1" - c=skmt.ExecQuery("select CAT_GP_CLASIF, COUNT(*) AS CUANTOS from " & query & " where (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) GROUP BY CAT_GP_CLASIF order by CAT_GP_CLASIF asc") - - 'ESTO ES PARA NO VER PROCTER - 'c=skmt.ExecQuery2("select CAT_GP_CLASIF, count(*) as cuantos from cat_gunaprod where CAT_GP_ALMACEN > 0 and cat_gp_clasif NOT IN (?,?,?,?,?,?,?,?,?,?) group by CAT_GP_CLASIF order by CAT_GP_CLASIF asc", Array As String("PROCTER","PROMOS","TRES MONTES","CAMPARI","CAMPARI-PRO","CLOROX DE MEXICO","MARS","CONAGRA","VERDE VALLE","MEAD JOHNSON")) - ListView1.Clear - lfila.Text = "MARCA" - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 10 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - ListView1.AddTwoLines(c.GetString("CAT_GP_CLASIF"),c.GetString("CUANTOS")) - Next - End If - End If - - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) - c.Position =0 - If c.RowCount > 0 Then - PERFIL = c.GetString("CAT_VA_VALOR") - Else - PERFIL = 0 - End If - c.Close - - If PERFIL = "V-COSTO" Then - skmt.ExecNonQuery("DELETE FROM CAT_GUNAPROD WHERE CAT_GP_ID IN (SELECT CAT_GP_ID FROM LISTA_PRECIOS WHERE NLISTA = '9' AND PRECIO = '0')") - End If -End Sub - -Sub ListView1_ItemClick (Position As Int, Value As Object) - 'Sub ListView1_ItemLongClick (Position As Int, Value As Object) - 'que_colonia = Value - 'StartActivity(fila) - - -' If Value = "PROMOS" And fila.cuenta <> "N" Then -' entro = "3" -' marca = "PROMOS" -' tipo = "PROMOS" -' Else if Value = "PROMOS" And fila.cuenta = "N" Then -' entro = "5" -'' StartActivity(fila) -' End If - If entro = "1" Then - marca = Value - skmt.Initialize(ruta,"kmt.db", True) - c2=skmt.ExecQuery2("select COUNT(*) AS CUANTOS, CAT_GP_TIPO from " & query & " where CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF = ? and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) GROUP BY CAT_GP_TIPO ORDER BY CAT_GP_TIPO ASC", Array As String(Value)) - ListView1.Clear - lfila.text = "TIPO" - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_GP_TIPO"),c2.GetString("CUANTOS")) - Next - End If - entro = "3" - Else If entro = "2" Then - tipo = Value - skmt.Initialize(ruta,"kmt.db", True) - c2=skmt.ExecQuery2("select COUNT(*) AS CUANTOS, CAT_GP_SUBTIPO from " & query & " where CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF = ? and CAT_GP_TIPO = ? and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) GROUP BY CAT_GP_SUBTIPO ORDER BY CAT_GP_SUBTIPO ASC ", Array As String(marca, Value)) - ListView1.Clear - lfila.text = "SUB-TIPO" - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - ListView1.AddTwoLines(c2.GetString("CAT_GP_SUBTIPO"),c2.GetString("CUANTOS")) - Next - End If - entro = "3" - - Else If entro = "3" Then - skmt.Initialize(ruta,"kmt.db", True) - c2=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_PRECIO, CAT_GP_ALMACEN, CAT_GP_IMG from " & query & " where CAT_GP_ALMACEN > 0 and CAT_GP_CLASIF = ? AND CAT_GP_TIPO = ? and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) ", Array As String(marca, Value)) - ListView1.Clear - lfila.text = "PRODUCTO" - Dim ins As InputStream - Dim bmp As Bitmap - Dim jpeg() As Byte - If c2.RowCount>0 Then - For i=0 To c2.RowCount -1 - c2.Position=i - jpeg = c2.GetBlob("CAT_GP_IMG") - ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length) - bmp.Initialize2(ins) - - ListView1.AddTwoLines(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO")) - Next - End If - entro = "4" - Else If entro = "4" Then - - skmt.ExecNonQuery("delete from PROID") - skmt.ExecNonQuery2("INSERT INTO PROID VALUES (?)", Array As Object(Value)) - 'StartActivity(pedidos) - HACER_PEDIDO - End If -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ya_entro ="0" - - If entro = "4" Then - entro = "3" - B4XPage_Appear - Return True - Else If entro = "3" Then - ' entro = "2" - ' B4XPage_Appear - ' Return True - ' Else If entro = "2" Then - ' entro = "1" - ' B4XPage_Appear - ' Return True - 'Else If entro = "1" Then - - ' I want to capture the key here so I return True - -' StartActivity(fila) - Return False - End If - End If - ' Returning False signals the system to handle the key -End Sub - -Sub BUSCA_TextChanged (Old As String, New As String) - q_buscar = "%" & BUSCA.Text & "%" - skmt.Initialize(ruta,"kmt.db", True) - ' c=skmt.ExecQuery2("select CAT_GP_NOMBRE from cat_gunaprod where CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? AND cat_gp_clasif NOT IN (?,?,?,?,?,?,?,?,?,?) order by CAT_GP_NOMBRE asc", Array As String(q_buscar, "PROCTER","PROMOS","TRES MONTES","CAMPARI","CAMPARI-PRO","CLOROX DE MEXICO","MARS","CONAGRA","VERDE VALLE","MEAD JOHNSON")) - c=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO,CAT_GP_IMG from " & query & " where CAT_GP_PRECIO > 0 AND CAT_GP_ALMACEN > 0 and CAT_GP_NOMBRE like ? and CAT_GP_CLASIF <> ? and (length(CAT_GP_CODPROMO) = 1 OR CAT_GP_CODPROMO = CAT_GP_ID) order by CAT_GP_NOMBRE asc", Array As String(q_buscar,"PROMOS")) - 'and CAT_GP_CLASIF <> ? group by CAT_GP_CLASIF order by CAT_GP_CLASIF asc", Array As String("PROMOS") ) - ListView1.Clear - Dim ins As InputStream - Dim bmp As Bitmap - Dim jpeg() As Byte - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - jpeg = c.GetBlob("CAT_GP_IMG") - ins.InitializeFromBytesArray(jpeg, 0, jpeg.Length) - bmp.Initialize2(ins) - - ListView1.AddTwoLines(c.GetString("CAT_GP_NOMBRE"),"Existencia " & c.GetString("CAT_GP_ALMACEN") & " Precio $" & c.GetString("CAT_GP_PRECIO")) - Next - End If - c.Close - entro= "4" -End Sub - -Sub HACER_PEDIDO - c=skmt.ExecQuery("Select SUBSTR(CUENTA,1,1) AS CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - Panel1.Visible= True - cambio = "0" - cantidad.Text = "" - c=skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") - C.Position =0 - ALMACEN = C.GetString("ID_ALMACEN") - C.Close - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - i_fotol.Visible = False - - skmt.Initialize(ruta,"kmt.db", True) - c=skmt.ExecQuery("select CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_IMP1,CAT_GP_IMP2,CAT_GP_PRECIO,CAT_GP_CLASIF,CAT_GP_STS,CAT_GP_TIPO,CAT_GP_SUBTIPO,CAT_GP_IMG,CAT_GP_ALMACEN,CAT_GP_DEV from " & query & " where CAT_GP_NOMBRE In (Select PDESC from PROID)") - - c.Position=0 - L_PROID.Text = c.GetString("CAT_GP_ID") - l_tipo.Text = c.GetString("CAT_GP_TIPO") - l_sub.Text = c.GetString("CAT_GP_SUBTIPO") - l_marca.Text = c.GetString("CAT_GP_CLASIF") - l_desc.Text = c.GetString("CAT_GP_NOMBRE") - - If PERFIL = "V-SUPER" Then - c2=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = '10' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c2.Position=0 - l_precio.Text = c2.GetString("PRECIO") - c2.Close - - Else IF ALMACEN = "6" And cl_ruta = "16" Then - c2=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = '11' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c2.Position=0 - l_precio.Text = c2.GetString("PRECIO") - c2.Close - Else - l_precio.Text = c.GetDouble("CAT_GP_PRECIO") - End If - l_bodega.Text = c.GetString("CAT_GP_ALMACEN") - PROMOS_VENTAS = c.GetString("CAT_GP_ALMACEN") - IMG_PASO = c.GetBlob("CAT_GP_IMG") - PROMO_C = c.GetString("CAT_GP_STS") - cambio = c.GetString("CAT_GP_DEV") - preciosin = c.GetString("CAT_GP_IMP2") - PROMO_CR = c.GetString("CAT_GP_IMP1") - precio2 = l_precio.Text - - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" Then - DESC_PROMO.Visible = True - CC=skmt.ExecQuery2("select count(*) as CUANTOS FROM PROMOS_COMP WHERE CAT_PA_ID = ?", Array As String(c.GetString("CAT_GP_ID"))) - CC.Position =0 - If CC.GetString("CUANTOS") = 0 Then - l_bodega.Text = "4" - Else - CC.Close - CC=skmt.ExecQuery2("select CAT_PA_MAXPROM, CAT_PA_MAXPROMREC, CAT_PA_MAXPROMCLIE FROM PROMOS_COMP WHERE CAT_PA_ID = ?", Array As String(c.GetString("CAT_GP_ID"))) - CC.Position =0 - - DD=skmt.ExecQuery2("SELECT COUNT(*) AS CUANTOS FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) AND HCCP_PROMO =?", Array As String(c.GetString("CAT_GP_ID"))) - DD.Position =0 - If DD.GetString("CUANTOS") = 0 Then - HCCP_CANT = 0 - Else - DD.Close - - DD=skmt.ExecQuery2("SELECT HCCP_CANT FROM HIST_CLIENTE_CANT_PROMOS WHERE HCCP_CLIENTE IN (Select cuenta from cuentaa) AND HCCP_PROMO =?", Array As String(c.GetString("CAT_GP_ID"))) - DD.Position =0 - HCCP_CANT = DD.GetString("HCCP_CANT") - DD.Close - End If - TOTAL_PROMO = CC.GetString("CAT_PA_MAXPROMCLIE") - HCCP_CANT - If HCCP_CANT = 0 Then - - l_bodega.Text = CC.GetString("CAT_PA_MAXPROM") - Else IF TOTAL_PROMO > CC.GetString("CAT_PA_MAXPROMREC") Then - l_bodega.Text = CC.GetString("CAT_PA_MAXPROMREC") - Else - l_bodega.Text = TOTAL_PROMO - End If - End If - Else - DESC_PROMO.Visible = False - End If - - c.Close - c=skmt.ExecQuery("select CASE WHEN pe_costo_tot is null then 0 else sum( pe_costo_tot ) end as TOTAL_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - t_venta.Text = c.GetString("TOTAL_CLIE") - c.Close - Terminar.Visible = True - guardar.Visible = True - cantidad.Visible = True - If cambio = "1" Then - nopromo.Visible = True - If clie_id = "N" Then - nopromo.Visible = False - End If - Else - nopromo.Visible = False - End If - Dim out As OutputStream - out = File.OpenOutput(ruta, "1.jpg", False) - out.WriteBytes(IMG_PASO, 0, IMG_PASO.Length) - out.Close - img_prod.Bitmap = LoadBitmap(ruta,"1.jpg") - TOT_ART_PROMO = "0" - TOT_ART_PROMOR = "0" - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And l_bodega.Text = "0" Then - Msgbox("ALERTA","EL CLIENTE YA NO PUEDE TENER ESTA PROMOCION") - Panel1.Visible= False - End If - - If marca <> "PROMOS" Then - If PERFIL = "PREVENTA" Then - t_precio.Visible = False - LV_PRECIOS.Visible = False - ELSE IF PERFIL = "V-ESPECIAL" Then - c=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA IN ('5','6','7','8','10') AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - LV_PRECIOS.Clear - Dim label1 As Label - label1 = LV_PRECIOS.TwoLinesLayout.Label - label1.TextSize = 10 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = LV_PRECIOS.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Black - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - LV_PRECIOS.AddTwoLines(c.GetString("NLISTA"),c.GetString("PRECIO")) - Next - End If - ELSE IF PERFIL = "V-MINI" Then - t_precio.Visible = False - LV_PRECIOS.Visible = False - - c=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = '2' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c.Position=0 - l_precio.Text = c.GetString("PRECIO") - c.Close - ELSE IF PERFIL = "V-COSTO" Then - - t_precio.Visible = False - LV_PRECIOS.Visible = False - - c=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = '9' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c.Position=0 - l_precio.Text = c.GetString("PRECIO") - c.Close - ELSE IF PERFIL = "V-SUPER" Then - t_precio.Visible = False - LV_PRECIOS.Visible = False - - c=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA ='9' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c.Position=0 - l_precio.Text = c.GetString("PRECIO") - c.Close - End If - End If - '' ESTO ES PARA NO PASAR DE LAS PROMOS ABORDO Y MANDARLAS AL MINIMO INICIO - If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" Then - If query = "cat_gunaprod2" Then - l_bodega.Text = PROMOS_VENTAS - e=skmt.ExecQuery2("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID = ? ", Array As String(L_PROID.Text) ) - e.Position = 0 - If e.GetString("CUANTOS") > 0 Then - F=skmt.ExecQuery2("select CAT_DP_IDPROD, CAT_DP_PZAS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID = ? ", Array As String(L_PROID.Text) ) - 'se coloco el if por la mala promocion. - - For i=0 To F.RowCount -1 - F.Position=i - c=skmt.ExecQuery2("select count(*) as CUANTOS from cat_gunaprod2 where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - c.Position=0 - If c.GetString("CUANTOS") > 0 Then - h=skmt.ExecQuery2("select CAT_GP_NOMBRE, CAT_GP_ALMACEN from cat_gunaprod2 where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - If h.GetString("CAT_GP_ALMACEN") < l_bodega.Text * f.GetString("CAT_DP_PZAS") Then - l_bodega.Text = "1" - End If - 'skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - h.Close - else if c.GetString("CUANTOS") = 0 Then - l_bodega.Text = "0" - End If - c.Close - Next - f.Close - End If - e.Close - End If - '' ESTO ES PARA NO PASAR DE LAS PROMOS ABORDO Y MANDARLAS AL MINIMO FIN - End If - If clie_id="0" Then - nopromo.Visible = False - End If -End Sub - -Sub guardar_Click - If cantidad.Text = "" Then - Panel1.Visible= False - ELSE If cantidad.Text > l_bodega.Text Then - Msgbox("Exede la existencia", "ADVERTENCIA") - Else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C > 0 And cantidad.Text > 0 Then - skmt.ExecNonQuery("delete from PROIDID") - skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 0)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") - Else - c=skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 0)") - C.Position =0 - TOT_ART_PROMO = C.GetString("TOT_ART_PROMO") - COSTO_TOT = C.GetString("COSTO_TOT") - C.Close - - c=skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO = 0 AND CAT_DP_TIPO = 1)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - TOT_ART_PROMOR = "0" 'Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") - Else - c=skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO = 0 AND CAT_DP_TIPO = 1)") - C.Position =0 - TOT_ART_PROMOR = C.GetString("TOT_ART_PROMO") - End If - C.Close - PROMO_C = PROMO_C * cantidad.Text - PROMO_CR = PROMO_CR * cantidad.Text - - If TOT_ART_PROMO = PROMO_C And TOT_ART_PROMOR = PROMO_CR Then - ' anterior a 29/06/2015 - 'skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))", Array As Object(l_precio.text/(TOT_ART_PROMO/cantidad.Text),l_precio.text/(TOT_ART_PROMO/cantidad.Text))) - 'en pe_cedis meto el codigo de promocion para hacer esta validacion. - skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_CEDIS = (?) WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))", Array As Object(L_PROID.text)) - D=skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 0") - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) And PE_CEDIS In (Select PROIDID from PROIDID) AND PE_CLIENTE IN (Select CUENTA from cuentaa) ",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - Next - End If - D.Close - D=skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND CAT_DP_PRECIO = 0 AND CAT_DP_TIPO = 1") - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) And PE_CEDIS In (Select PROIDID from PROIDID) AND PE_CLIENTE IN (Select CUENTA from cuentaa) ",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - Next - End If - D.Close - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - - c.Close - - If Main.tipov = "ABORDO" Then - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - Else - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - End If - - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - 'skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object ("COACALCO",cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario)) - 'para insertar la promo de ades el de regalo en 0 - e=skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 AND CAT_DP_PRECIO = 0") - - If e.GetString("CUANTOS") > 0 Then - - F=skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 AND CAT_DP_PRECIO = 0") - 'se coloco el if por la mala promocion. - - For i=0 To F.RowCount -1 - F.Position=i - h=skmt.ExecQuery2("select CAT_GP_NOMBRE from " & query & " where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - h.Close - Next - f.Close - End If - e.Close - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - Else - Msgbox("Tiene " & TOT_ART_PROMO & " " & TOT_ART_PROMOR & " y necesita " & PROMO_C & " " & PROMO_CR & " Para la Promo. " , "ADVERTENCIA") - End If - End If - - cantidad.Text = "" - Panel1.Visible= False - - skmt.ExecNonQuery("delete from pedido3") - skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - - skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, " & _ - " PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO ) Select PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " SUM(PE_COSTO_TOT) As PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO " & _ - " FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FOLIO ") - c=skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID, " & _ - " PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? " _ - , Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - - Next - End If - skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - - - else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C = 0 Then - skmt.ExecNonQuery("delete from PROIDID") - - skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - - c.Close - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - 'skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object ("COACALCO",cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario)) - 'para insertar la promo de ades el de regalo en 0 - e=skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) ") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS, CAT_DP_PRECIO FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID)") - For i =0 To f.RowCount -1 - F.Position =i - h=skmt.ExecQuery2("select CAT_GP_NOMBRE from " & query & " where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,f.GetString("CAT_DP_PRECIO") * cantidad.text * f.GetString("CAT_DP_PZAS"), f.GetString("CAT_DP_PRECIO"), f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - - h.Close - Next - f.Close - End If - e.Close - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - cantidad.Text = "" - c=skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Main.lon_gps, Main.lat_gps,ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - If Main.tipov <> "ABORDO" Then - skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - End If - - Panel1.Visible= False - - skmt.ExecNonQuery("delete from pedido3") - skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - - skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, " & _ - " PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO ) Select PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " SUM(PE_COSTO_TOT) As PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO " & _ - " FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FOLIO ") - c=skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID, " & _ - " PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? " _ - , Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - - Next - End If - skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - - - Else - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - If Main.tipov = "ABORDO" Then - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - Else - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - End If - - - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (ALMACEN,cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,preciosin,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - c=skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Main.lon_gps, Main.lat_gps,ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - If Main.tipov <> "ABORDO" Then - skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - - End If - Panel1.Visible= False - - skmt.ExecNonQuery("delete from pedido3") - skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - - skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, " & _ - " PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO ) Select PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " SUM(PE_COSTO_TOT) As PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO " & _ - " FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FOLIO ") - c=skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID, " & _ - " PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? " _ - , Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - - Next - End If - skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - - End If -End Sub -Sub GPS_LocationChanged (Location1 As Location) -' lat_gps=Location1.ConvertToSeconds(Location1.Latitude) -' lon_gps=Location1.ConvertToSeconds(Location1.Longitude) -End Sub - -Sub Terminar_Click - - If cantidad.Text = "" Then -' StartActivity(fila) - - ELSE If cantidad.Text > l_bodega.Text Then - Msgbox("Exede la existencia", "ADVERTENCIA") - Else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C > 0 And cantidad.Text > 0 Then - skmt.ExecNonQuery("delete from PROIDID") - - skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 0)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") - Else - c=skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 0)") - C.Position =0 - TOT_ART_PROMO = C.GetString("TOT_ART_PROMO") - COSTO_TOT = C.GetString("COSTO_TOT") - C.Close - - c=skmt.ExecQuery("Select count(*) as CUANTOSD from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO = 0 AND CAT_DP_TIPO = 1)") - c.Position =0 - If c.GetString("CUANTOSD") = 0 Then - TOT_ART_PROMOR = "0" 'Msgbox("No tiene venta el cliente para la promo", "ADVERTENCIA") - Else - c=skmt.ExecQuery("Select sum(pe_cant) As TOT_ART_PROMO, sum(PE_COSTO_TOT) as COSTO_TOT from pedido where PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID) AND CAT_DP_PRECIO = 0 AND CAT_DP_TIPO = 1)") - C.Position =0 - TOT_ART_PROMOR = C.GetString("TOT_ART_PROMO") - End If - C.Close - - - PROMO_C = PROMO_C * cantidad.Text - PROMO_CR = PROMO_CR * cantidad.Text - - If TOT_ART_PROMO = PROMO_C And TOT_ART_PROMOR = PROMO_CR Then - ' anterior a 29/06/2015 - 'skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))", Array As Object(l_precio.text/(TOT_ART_PROMO/cantidad.Text),l_precio.text/(TOT_ART_PROMO/cantidad.Text))) - 'en pe_cedis meto el codigo de promocion para hacer esta validacion. - skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_CEDIS = (?) WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))", Array As Object(L_PROID.text)) - D=skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND CAT_DP_PRECIO > 0") - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - - skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) And PE_CEDIS In (Select PROIDID from PROIDID) AND PE_CLIENTE IN (Select CUENTA from cuentaa) ",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - - Next - End If - D.Close - D=skmt.ExecQuery("select CAT_DP_ID, CAT_DP_PRECIO, CAT_DP_PRECIO_SIMPTOS, CAT_DP_IDPROD FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) AND CAT_DP_PRECIO = 0 AND CAT_DP_TIPO = 1") - If D.RowCount>0 Then - For i=0 To D.RowCount -1 - D.Position=i - - skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_COSTOU = (?), PE_COSTO_TOT = PE_CANT * (?) , PE_COSTO_SIN = (?) WHERE PE_PROID = (?) And PE_CEDIS In (Select PROIDID from PROIDID) AND PE_CLIENTE IN (Select CUENTA from cuentaa) ",Array As Object( D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO"), D.GetString("CAT_DP_PRECIO_SIMPTOS"),D.GetString("CAT_DP_IDPROD"))) - - Next - End If - D.Close - - - - 'skmt.ExecNonQuery("UPDATE PEDIDO SET PE_COSTO_TOT = 0.01 WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and pe_proid In (Select cat_dp_idprod from CAT_DETALLES_PAQ WHERE CAT_DP_ID In (Select PROIDID from PROIDID))") - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - - c.Close - - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - 'skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object ("COACALCO",cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario)) - 'para insertar la promo de ades el de regalo en 0 - e=skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 AND CAT_DP_PRECIO = 0") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) and CAT_DP_TIPO = 0 AND CAT_DP_PRECIO = 0") - 'meter el otro - F.Position =0 - h=skmt.ExecQuery2("select CAT_GP_NOMBRE from " & query & " where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object( f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - - - h.Close - f.Close - End If - e.Close - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - Else - Msgbox("Tiene " & TOT_ART_PROMO & " " & TOT_ART_PROMOR & " y necesita " & PROMO_C & " " & PROMO_CR & " Para la Promo. " , "ADVERTENCIA") - End If - End If - - cantidad.Text = "" - Panel1.Visible= False - - skmt.ExecNonQuery("delete from pedido3") - skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - - skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, " & _ - " PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO ) Select PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " SUM(PE_COSTO_TOT) As PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO " & _ - " FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FOLIO ") - c=skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID, " & _ - " PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? " _ - , Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - - Next - End If - skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - -' StartActivity(fila) - else If l_marca.text = "PROMOS" And l_tipo.Text ="PROMOS" And PROMO_C = 0 Then - skmt.ExecNonQuery("delete from PROIDID") - - skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - - c.Close - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - 'skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO) VALUES(?,?,?,?,?,?,?,?,?) ", Array As Object ("COACALCO",cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario)) - 'para insertar la promo de ades el de regalo en 0 - e=skmt.ExecQuery("select count(*) as CUANTOS FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID) ") - e.Position =0 - If e.GetString("CUANTOS") > 0 Then - F=skmt.ExecQuery("select CAT_DP_IDPROD, CAT_DP_PZAS, CAT_DP_PRECIO FROM CAT_DETALLES_PAQ WHERE CAT_DP_ID IN (Select PROIDID from PROIDID)") - For i =0 To f.RowCount -1 - F.Position =i - h=skmt.ExecQuery2("select CAT_GP_NOMBRE from " & query & " where CAT_GP_ID = ? ", Array As String(f.GetString("CAT_DP_IDPROD"))) - h.Position=0 - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,f.GetString("CAT_DP_PRECIO") * cantidad.text * f.GetString("CAT_DP_PZAS"), f.GetString("CAT_DP_PRECIO"), f.GetString("CAT_DP_PZAS") * cantidad.text, h.GetString("CAT_GP_NOMBRE"), f.GetString("CAT_DP_IDPROD"),clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(f.GetString("CAT_DP_PZAS") * cantidad.text, f.GetString("CAT_DP_IDPROD"))) - - - h.Close - Next - f.Close - End If - e.Close - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (L_PROID.text,0, 0, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - cantidad.Text = "" - c=skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Main.lon_gps, Main.lat_gps,ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - - - skmt.ExecNonQuery("delete from pedido3") - skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - - skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, " & _ - " PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO ) Select PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " SUM(PE_COSTO_TOT) As PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO " & _ - " FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FOLIO ") - c=skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID, " & _ - " PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? " _ - , Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - - Next - End If - skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") -' -' StartActivity(fila) - - Else - - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c.Close - c=skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") - c.Position=0 - cl_ruta = c.GetString("CAT_CL_RUTA") - c.Close - - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (ALMACEN,cantidad.Text * l_precio.Text, l_precio.text, cantidad.text, l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,cl_ruta,preciosin,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - c=skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") - c.Position=0 - skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)") - skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT,PC_ALMACEN,PC_RUTA,PC_COSTO_SIN) VALUES (?,?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Main.lon_gps, Main.lat_gps,ALMACEN,cl_ruta,c.GetString("TOTAL_CLIE_SIN"))) - skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)") - Panel1.Visible= False - - skmt.ExecNonQuery("delete from pedido3") - skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = 0 where PE_FOLIO IS NULL") - - skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, " & _ - " PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO ) Select PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " SUM(PE_COSTO_TOT) As PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO, PE_FOLIO " & _ - " FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, " & _ - " PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FOLIO ") - c=skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID, " & _ - " PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select cuenta from cuentaa)") - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? " _ - , Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"))) - - Next - End If - skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ") - skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3") - -' StartActivity(fila) - End If -End Sub -Sub i_fotol_Click - i_fotol.Visible = False - -End Sub - -Sub DESC_PROMO_Click - skmt.ExecNonQuery("delete from PROIDID") - skmt.ExecNonQuery2("INSERT INTO PROIDID VALUES (?)", Array As Object(L_PROID.text)) - -' StartActivity(detalle_promo) -End Sub -Sub nopromo_Click - c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("CAMBIOS")) - c.Position =0 - CAMBIOS = c.GetString("CAT_VA_VALOR") - c.Close - If CAMBIOS = "1" Then - c=skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_RMI WHERE HR_CLIENTE IN (Select CUENTA from cuentaa) and HR_PROID = '" & L_PROID.Text & "'") - c.Position =0 - EXISTE_CAMBIO = c.GetString("CUANTOS") - c.Close - If EXISTE_CAMBIO = 0 Then - EXISTE_CAMBIO = 0 - Else - c=skmt.ExecQuery("select SUM(HR_CANT) AS CUANTOS from HIST_RMI WHERE HR_CLIENTE IN (Select CUENTA from cuentaa) and HR_PROID = '" & L_PROID.Text & "'") - c.Position =0 - EXISTE_CAMBIO = c.GetString("CUANTOS") - c.Close - - End If - If EXISTE_CAMBIO = 0 Then - Msgbox("NO SE VENDIO ESTE PRODUCTO, NO SE PUEDE CAMBIAR","ALERTA") - ELSE If cantidad.Text = "" Then - Msgbox("Cantidad no puede ser 0","Cantidad") - Else If cantidad.Text > EXISTE_CAMBIO Then - Msgbox("Exede la existencia", "ADVERTENCIA") - Else - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR",0,0, cantidad.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - - - cantidad.Text = "" - Panel1.Visible= False - - - End If - - Else - If cantidad.Text > 15 Then - Msgbox("Exede la existencia", "ADVERTENCIA") - Else - DateTime.DateFormat = "MM/dd/yyyy" - sDate=DateTime.Date(DateTime.Now) - sTime=DateTime.Time(DateTime.Now) - c=skmt.ExecQuery("Select CUENTA from cuentaa") - c.Position=0 - clie_id = c.GetString("CUENTA") - c=skmt.ExecQuery("select USUARIO from usuarioa") - c.Position=0 - usuario = c.GetString("USUARIO") - - skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_TIPO,PE_PRECIO2) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object ("DUR",0,0, cantidad.text,"CAMBIO" & l_desc.text, L_PROID.Text,clie_id, sDate & sTime, usuario,Main.tipov,precio2)) - skmt.ExecNonQuery2("update " & query & " set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cantidad.Text, L_PROID.Text)) - - - cantidad.Text = "" - Panel1.Visible= False - - - End If - - End If - -End Sub - -Sub LV_PRECIOS_ItemClick (Position As Int, Value As Object) - c=skmt.ExecQuery("select PRECIO, NLISTA FROM LISTA_PRECIOS WHERE NLISTA = " & "'" & Value &"' AND CAT_GP_ID =" & "'" &L_PROID.TEXT&"' ORDER BY NLISTA ASC") - c.Position=0 - l_precio.Text = c.GetString("PRECIO") - c.Close -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_TicketsDia.bas b/B4A - Copy/C_TicketsDia.bas deleted file mode 100644 index 2a6f13c..0000000 --- a/B4A - Copy/C_TicketsDia.bas +++ /dev/null @@ -1,149 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore - 'These global variables will be declared once when the application starts. - 'These variables can be accessed from all modules. - Dim skmt As SQL - 'These global variables will be redeclared each time the activity is created. - 'These variables can only be accessed from this module. - Dim c As Cursor - Dim ruta As String - Dim ListView1 As ListView - Dim b_noventa As Button - Dim nombre_boton As String -End Sub - -Private Sub B4XPage_Created (Root1 As B4XView) - Root = Root1 - Root.LoadLayout("buscar") - ruta = File.DirInternal - - ' se crea o no el archivo de la base de ddatos de kmt - 'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE - 'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA - 'SI SE REGRESA A ESTE ACTIVIDAD. - If File.Exists(ruta, "kmt.db") = False Then - File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") - End If - - skmt.Initialize(ruta,"kmt.db", True) - - c=skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") - ListView1.Clear - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 10 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 15 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) - Next - End If - 'la_no_ird.Text = c.GetString("PR_CF_SALDO_ACORT") - - - 'ListView1.AddTwoLines(c.GetString("pr_cd_nombre"),c.GetString("pr_cd_colonia")) - ' Next - 'End If - -End Sub - -Sub B4XPage_Appear - nombre_boton = "NOVENTA" - c=skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") - ListView1.Clear - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) - Next - End If - c.Close -End Sub - -Sub Regresar_Click -' StartActivity(fila) -End Sub - -Sub Activity_KeyPress (key As Int) As Boolean - ' BACK key pressed - If key=KeyCodes.KEYCODE_BACK Then - ' I want to capture the key here so I return True -' StartActivity(seleccion) - 'Return True - End If - ' Returning False signals the system to handle the key - Return False -End Sub - -Sub ListView1_ItemLongClick (Position As Int, Value As Object) - skmt.ExecNonQuery("delete from CUENTAA") - skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) -' StartActivity(fila) -End Sub - -Sub b_noventa_Click - If nombre_boton = "NOVENTA" Then - nombre_boton = "VENTA" - b_noventa.Text ="VENTA" - - c=skmt.ExecQuery("select NV_CLIENTE,NV_MOTIVO,NV_COMM FROM NOVENTA ORDER BY NV_CLIENTE asc") - ListView1.Clear - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("NV_CLIENTE"),"Motivo #"& c.GetString("NV_MOTIVO")& " Comentario $"& c.GetString("NV_COMM")) - Next - End If - Else - nombre_boton = "NOVENTA" - b_noventa.Text ="NO VENTA" - c=skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") - ListView1.Clear - - If c.RowCount>0 Then - For i=0 To c.RowCount -1 - c.Position=i - Dim label1 As Label - label1 = ListView1.TwoLinesLayout.Label - label1.TextSize = 15 - label1.TextColor = Colors.Black - Dim label2 As Label - label2 = ListView1.TwoLinesLayout.SecondLabel - label2.TextSize = 10 - label2.TextColor = Colors.Blue - ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) - Next - End If - c.Close - End If -End Sub \ No newline at end of file diff --git a/B4A - Copy/C_updateAvailable.bas b/B4A - Copy/C_updateAvailable.bas deleted file mode 100644 index 36fa8d1..0000000 --- a/B4A - Copy/C_updateAvailable.bas +++ /dev/null @@ -1,24 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=11.5 -@EndOfDesignText@ -Sub Class_Globals - Private Root As B4XView 'ignore - Private xui As XUI 'ignore -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 - -End Sub - -'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. \ No newline at end of file diff --git a/B4A - Copy/CameraExClass.bas b/B4A - Copy/CameraExClass.bas deleted file mode 100644 index 7da8e8f..0000000 --- a/B4A - Copy/CameraExClass.bas +++ /dev/null @@ -1,290 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=6.8 -@EndOfDesignText@ - -'Class module -'version 1.20 -'See this page for the list of constants: -'http://developer.android.com/intl/fr/reference/android/hardware/Camera.Parameters.html -'Note that you should use the constant values instead of the names. -Sub Class_Globals - Private nativeCam As Object - Private cam As Camera - Private r As Reflector - Private target As Object - Private event As String - Public Front As Boolean - Type CameraInfoAndId (CameraInfo As Object, Id As Int) - Type CameraSize (Width As Int, Height As Int) - Private parameters As Object -End Sub - -Public Sub Initialize (Panel1 As Panel, FrontCamera As Boolean, TargetModule As Object, EventName As String) - target = TargetModule - event = EventName - Front = FrontCamera - Dim id As Int - id = FindCamera(Front).id - If id = -1 Then - Front = Not(Front) 'try different camera - id = FindCamera(Front).id - If id = -1 Then - ToastMessageShow("No camera found.", True) - Return - End If - End If - cam.Initialize2(Panel1, "camera", id) -End Sub - -Private Sub FindCamera (frontCamera As Boolean) As CameraInfoAndId - Dim ci As CameraInfoAndId - Dim cameraInfo As Object - Dim cameraValue As Int - If frontCamera Then cameraValue = 1 Else cameraValue = 0 - cameraInfo = r.CreateObject("android.hardware.Camera$CameraInfo") - Dim numberOfCameras As Int = r.RunStaticMethod("android.hardware.Camera", "getNumberOfCameras", Null, Null) - For i = 0 To numberOfCameras - 1 - r.RunStaticMethod("android.hardware.Camera", "getCameraInfo", Array As Object(i, cameraInfo), _ - Array As String("java.lang.int", "android.hardware.Camera$CameraInfo")) - r.target = cameraInfo - If r.GetField("facing") = cameraValue Then - ci.cameraInfo = r.target - ci.Id = i - Return ci - End If - Next - ci.id = -1 - Return ci -End Sub - -Private Sub SetDisplayOrientation - r.target = r.GetActivity - r.target = r.RunMethod("getWindowManager") - r.target = r.RunMethod("getDefaultDisplay") - r.target = r.RunMethod("getRotation") - Dim previewResult, result, degrees As Int = r.target * 90 - Dim ci As CameraInfoAndId = FindCamera(Front) - r.target = ci.CameraInfo - Dim orientation As Int = r.GetField("orientation") - If Front Then - previewResult = (orientation + degrees) Mod 360 - result = previewResult - previewResult = (360 - previewResult) Mod 360 - Else - previewResult = (orientation - degrees + 360) Mod 360 - result = previewResult - Log(previewResult) - End If - r.target = nativeCam - r.RunMethod2("setDisplayOrientation", previewResult, "java.lang.int") - r.target = parameters - r.RunMethod2("setRotation", result, "java.lang.int") - CommitParameters -End Sub - -Private Sub Camera_Ready (Success As Boolean) - If Success Then - r.target = cam - nativeCam = r.GetField("camera") - r.target = nativeCam - parameters = r.RunMethod("getParameters") - SetDisplayOrientation - Else - Log("success = false, " & LastException) - End If - CallSub2(target, event & "_ready", Success) -End Sub - -Sub Camera_Preview (Data() As Byte) - If SubExists(target, event & "_preview") Then - CallSub2(target, event & "_preview", Data) - End If -End Sub -Public Sub TakePicture - cam.TakePicture -End Sub - -Private Sub Camera_PictureTaken (Data() As Byte) - CallSub2(target, event & "_PictureTaken", Data) -End Sub - -Public Sub StartPreview - cam.StartPreview -End Sub - -Public Sub StopPreview - cam.StopPreview -End Sub - -Public Sub Release - cam.Release -End Sub - -'Saves the data received from PictureTaken event -Public Sub SavePictureToFile(Data() As Byte, Dir As String, FileName As String) - Dim out As OutputStream = File.OpenOutput(Dir, FileName, False) - out.WriteBytes(Data, 0, Data.Length) - out.Close -End Sub - -Public Sub SetParameter(Key As String, Value As String) - r.target = parameters - r.RunMethod3("set", Key, "java.lang.String", Value, "java.lang.String") -End Sub - -Public Sub GetParameter(Key As String) As String - r.target = parameters - Return r.RunMethod2("get", Key, "java.lang.String") -End Sub - -Public Sub CommitParameters - Try - r.target = nativeCam - r.RunMethod4("setParameters", Array As Object(parameters), Array As String("android.hardware.Camera$Parameters")) - Catch - ToastMessageShow("Error setting parameters.", True) - Log(LastException) - End Try -End Sub - -Public Sub GetColorEffect As String - Return GetParameter("effect") -End Sub - -Public Sub SetColorEffect(Effect As String) - SetParameter("effect", Effect) -End Sub - -Public Sub GetSupportedPicturesSizes As CameraSize() - r.target = parameters - Dim list1 As List = r.RunMethod("getSupportedPictureSizes") - Dim cs(list1.Size) As CameraSize - For i = 0 To list1.Size - 1 - r.target = list1.Get(i) - cs(i).Width = r.GetField("width") - cs(i).Height = r.GetField("height") - Next - Return cs -End Sub - -Public Sub SetPictureSize(Width As Int, Height As Int) - r.target = parameters - r.RunMethod3("setPictureSize", Width, "java.lang.int", Height, "java.lang.int") -End Sub - -Public Sub SetJpegQuality(Quality As Int) - r.target = parameters - r.RunMethod2("setJpegQuality", Quality, "java.lang.int") -End Sub - -Public Sub SetFlashMode(Mode As String) - r.target = parameters - r.RunMethod2("setFlashMode", Mode, "java.lang.String") -End Sub - -Public Sub GetFlashMode As String - r.target = parameters - Return r.RunMethod("getFlashMode") -End Sub - -Public Sub GetSupportedFlashModes As List - r.target = parameters - Return r.RunMethod("getSupportedFlashModes") -End Sub - -Public Sub GetSupportedColorEffects As List - r.target = parameters - Return r.RunMethod("getSupportedColorEffects") -End Sub - -Public Sub GetPreviewSize As CameraSize - r.target = parameters - r.target = r.RunMethod("getPreviewSize") - Dim cs As CameraSize - cs.Width = r.GetField("width") - cs.Height = r.GetField("height") - Return cs -End Sub - -Public Sub GetPictureSize As CameraSize - r.target = parameters - r.target = r.RunMethod("getPictureSize") - Dim cs As CameraSize - cs.Width = r.GetField("width") - cs.Height = r.GetField("height") - Return cs -End Sub - -'Converts a preview image formatted in YUV format to JPEG. -'Note that you should not save every preview image as it will slow down the whole process. -Public Sub PreviewImageToJpeg(data() As Byte, quality As Int) As Byte() - Dim size, previewFormat As Object - r.target = parameters - size = r.RunMethod("getPreviewSize") - previewFormat = r.RunMethod("getPreviewFormat") - r.target = size - Dim width = r.GetField("width"), height = r.GetField("height") As Int - Dim yuvImage As Object = r.CreateObject2("android.graphics.YuvImage", _ - Array As Object(data, previewFormat, width, height, Null), _ - Array As String("[B", "java.lang.int", "java.lang.int", "java.lang.int", "[I")) - r.target = yuvImage - Dim rect1 As Rect - rect1.Initialize(0, 0, r.RunMethod("getWidth"), r.RunMethod("getHeight")) - Dim out As OutputStream - out.InitializeToBytesArray(100) - r.RunMethod4("compressToJpeg", Array As Object(rect1, quality, out), _ - Array As String("android.graphics.Rect", "java.lang.int", "java.io.OutputStream")) - Return out.ToBytesArray -End Sub - -Public Sub GetSupportedFocusModes As List - r.target = parameters - Return r.RunMethod("getSupportedFocusModes") -End Sub - -Public Sub SetContinuousAutoFocus - Dim modes As List = GetSupportedFocusModes - If modes.IndexOf("continuous-picture") > -1 Then - SetFocusMode("continuous-picture") - Else If modes.IndexOf("continuous-video") > -1 Then - SetFocusMode("continuous-video") - Else - Log("Continuous focus mode is not available") - End If -End Sub - -Public Sub SetFocusMode(Mode As String) - r.target = parameters - r.RunMethod2("setFocusMode", Mode, "java.lang.String") -End Sub - -Public Sub GetFocusDistances As Float() - Dim F(3) As Float - r.target = parameters - r.RunMethod4("getFocusDistances", Array As Object(F), Array As String("[F")) - Return F -End Sub -'This method should only be called if you need to immediately release the camera. -'For example if you need to start another application that depends on the camera. -Public Sub CloseNow - cam.Release - r.target = cam - r.RunMethod2("releaseCameras", True, "java.lang.boolean") -End Sub -'Calls AutoFocus and then takes the picture if focus was successfull. -Public Sub FocusAndTakePicture - cam.AutoFocus -End Sub -Private Sub Camera_FocusDone (Success As Boolean) - If Success Then - TakePicture - Else - Log("AutoFocus error.") - End If -End Sub - - - diff --git a/B4A - Copy/DBRequestManager.bas b/B4A - Copy/DBRequestManager.bas deleted file mode 100644 index af77225..0000000 --- a/B4A - Copy/DBRequestManager.bas +++ /dev/null @@ -1,275 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=6.8 -@EndOfDesignText@ -'Necesita la libreria RandomAccessFile, ByteConverter - -'Class module -Sub Class_Globals - Private mTarget As Object - Type DBResult (Tag As Object, Columns As Map, Rows As List) - Type DBCommand (Name As String, Parameters() As Object) - Private link As String - Private bc As ByteConverter - Private T_NULL = 0, T_STRING = 1, T_SHORT = 2, T_INT = 3, T_LONG = 4, T_FLOAT = 5 _ - ,T_DOUBLE = 6, T_BOOLEAN = 7, T_BLOB = 8 As Byte - Private VERSION As Float = 0.9 - Private tempArray(1) As Object - Dim jobTagAnterior As String = "" 'Mod por CHV - 211027 -End Sub - -'Target - The module that handles JobDone (usually Me). -'ConnectorLink - URL of the Java server. -Public Sub Initialize (Target As Object, ConnectorLink As String) - mTarget = Target - link = ConnectorLink -End Sub - -'Sends a query request. -'Command - Query name and parameters. -'Limit - Maximum rows to return or 0 for no limit. -'Tag - An object that will be returned in the result. -Public Sub ExecuteQuery(Command As DBCommand, Limit As Int, Tag As Object) - Dim j As HttpJob - Dim ms As OutputStream - Dim out2 As OutputStream = StartJob(j,ms, Tag) - - WriteObject(Command.Name, out2) - WriteInt(Limit, out2) - WriteList(Command.Parameters, out2) - out2.Close - j.PostBytes(link & "?method=query", ms.ToBytesArray) -End Sub - -'Executes a batch of (non-select) commands. -'ListOfCommands - List of the commands that will be executes. -'Tag - An object that will be returned in the result. -Public Sub ExecuteBatch(ListOfCommands As List, Tag As Object) - Dim j As HttpJob - Dim ms As OutputStream - Dim out2 As OutputStream = StartJob(j,ms, Tag) - WriteInt(ListOfCommands.Size, out2) - For Each Command As DBCommand In ListOfCommands - WriteObject(Command.Name, out2) - WriteList(Command.Parameters, out2) - Next - out2.Close - j.PostBytes(link & "?method=batch", ms.ToBytesArray) -End Sub - -'Similar to ExecuteBatch. Sends a single command. -Public Sub ExecuteCommand(Command As DBCommand, Tag As Object) - ExecuteBatch(Array As DBCommand(Command), Tag) -End Sub - -Private Sub StartJob(j As HttpJob, MemoryStream As OutputStream, Tag As Object) As OutputStream - j.Initialize("DBRequest", mTarget) - j.Tag = Tag - MemoryStream.InitializeToBytesArray(0) - Dim compress As CompressedStreams - Dim out As OutputStream = compress.WrapOutputStream(MemoryStream, "gzip") - WriteObject(VERSION, out) - Return out -End Sub - -Private Sub WriteList(Parameters As List, out As OutputStream) - Dim data() As Byte - If Parameters = Null Or Parameters.IsInitialized = False Then - Dim Parameters As List - Parameters.Initialize - End If - data = bc.IntsToBytes(Array As Int(Parameters.Size)) - out.WriteBytes(data, 0, data.Length) - For Each o As Object In Parameters - WriteObject(o, out) - Next -End Sub - -Private Sub WriteObject(o As Object, out As OutputStream) - Dim data() As Byte - tempArray(0) = o - If tempArray(0) = Null Then - out.WriteBytes(Array As Byte(T_NULL), 0, 1) - Else If tempArray(0) Is Short Then - out.WriteBytes(Array As Byte(T_SHORT), 0, 1) - data = bc.ShortsToBytes(Array As Short(o)) - Else If tempArray(0) Is Int Then - out.WriteBytes(Array As Byte(T_INT), 0, 1) - data = bc.IntsToBytes(Array As Int(o)) - Else If tempArray(0) Is Float Then - out.WriteBytes(Array As Byte(T_FLOAT), 0, 1) - data = bc.FloatsToBytes(Array As Float(o)) - Else If tempArray(0) Is Double Then - out.WriteBytes(Array As Byte(T_DOUBLE), 0, 1) - data = bc.DoublesToBytes(Array As Double(o)) - Else If tempArray(0) Is Long Then - out.WriteBytes(Array As Byte(T_LONG), 0, 1) - data = bc.LongsToBytes(Array As Long(o)) - Else If tempArray(0) Is Boolean Then - out.WriteBytes(Array As Byte(T_BOOLEAN), 0, 1) - Dim b As Boolean = 0 - Dim data(1) As Byte - If b Then data(0) = 1 Else data(0) = 0 - Else If GetType(tempArray(0)) = "[B" Then - data = o - out.WriteBytes(Array As Byte(T_BLOB), 0, 1) - WriteInt(data.Length, out) - Else 'If o Is String Then (treat all other values as string) - out.WriteBytes(Array As Byte(T_STRING), 0, 1) - data = bc.StringToBytes(o, "UTF8") - WriteInt(data.Length, out) - End If - If data.Length > 0 Then out.WriteBytes(data, 0, data.Length) -End Sub - -Private Sub ReadObject(In As InputStream) As Object - Dim data(1) As Byte - In.ReadBytes(data, 0, 1) - Select data(0) - Case T_NULL - Return Null - Case T_SHORT - Dim data(2) As Byte - Return bc.ShortsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_INT - Dim data(4) As Byte - Return bc.IntsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_LONG - Dim data(8) As Byte - Return bc.LongsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_FLOAT - Dim data(4) As Byte - Return bc.FloatsFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_DOUBLE - Dim data(8) As Byte - Return bc.DoublesFromBytes(ReadBytesFully(In, data, data.Length))(0) - Case T_BOOLEAN - Dim b As Byte = ReadByte(In) - Return b = 1 - Case T_BLOB - Dim len As Int = ReadInt(In) - Dim data(len) As Byte - Return ReadBytesFully(In, data, data.Length) - Case Else - Dim len As Int = ReadInt(In) - Dim data(len) As Byte - ReadBytesFully(In, data, data.Length) - Return BytesToString(data, 0, data.Length, "UTF8") - End Select -End Sub - -Private Sub ReadBytesFully(In As InputStream, Data() As Byte, Len As Int) As Byte() - Dim count = 0, read As Int - Do While count < Len And read > -1 - read = In.ReadBytes(Data, count, Len - count) - count = count + read - Loop - Return Data -End Sub - -Private Sub WriteInt(i As Int, out As OutputStream) - Dim data() As Byte - data = bc.IntsToBytes(Array As Int(i)) - out.WriteBytes(data, 0, data.Length) -End Sub - -Private Sub ReadInt(In As InputStream) As Int - Dim data(4) As Byte - Return bc.IntsFromBytes(ReadBytesFully(In, data, data.Length))(0) -End Sub - -Private Sub ReadByte(In As InputStream) As Byte - Dim data(1) As Byte - In.ReadBytes(data, 0, 1) - Return data(0) -End Sub - -'Handles the Job result and returns a DBResult. -Public Sub HandleJob(Job As HttpJob) As DBResult -' Dim start As Long = DateTime.Now - Dim In As InputStream = Job.GetInputStream - Dim cs As CompressedStreams - In = cs.WrapInputStream(In, "gzip") - Dim serverVersion As Float = ReadObject(In) 'ignore - Dim method As String = ReadObject(In) - Dim table As DBResult - table.Initialize - table.Columns.Initialize - table.rows.Initialize - table.Tag = Job.Tag - If jobTagAnterior <> Job.Tag Then LogColor("HandleJob: '"&Job.Tag&"'", Colors.Blue) 'Mod por CHV - 211023 - jobTagAnterior = Job.Tag 'Mod por CHV - 211023 - If method = "query" Then - Dim numberOfColumns As Int = ReadInt(In) - For i = 0 To numberOfColumns - 1 - table.Columns.Put(ReadObject(In), i) - Next - Do While ReadByte(In) = 1 - Dim rowObjects(numberOfColumns) As Object - table.rows.Add(rowObjects) - For col = 0 To numberOfColumns - 1 - Dim o As Object = ReadObject(In) - rowObjects(col) = o - Next - Loop - Else If method = "batch" Then - table.Columns.Put("AffectedRows", 0) - Dim rows As Int = ReadInt(In) - For i = 0 To rows - 1 - table.rows.Add(Array As Object(ReadInt(In))) - Next - End If - In.Close -' Log("HandleJob: " & (DateTime.Now - start)) - Return table -End Sub -'Reads a file and returns the file as a bytes array. -Public Sub FileToBytes(Dir As String, FileName As String) As Byte() - Dim out As OutputStream - out.InitializeToBytesArray(0) - Dim In As InputStream = File.OpenInput(Dir, FileName) - File.Copy2(In, out) - out.Close - Return out.ToBytesArray -End Sub - -'Converts an image to a bytes array (for BLOB fields). -Public Sub ImageToBytes(Image As Bitmap) As Byte() - Dim out As OutputStream - out.InitializeToBytesArray(0) - Image.WriteToStream(out, 100, "JPEG") - out.Close - Return out.ToBytesArray -End Sub - -'Converts a bytes array to an image (for BLOB fields). -Public Sub BytesToImage(bytes() As Byte) As Bitmap - Dim In As InputStream - In.InitializeFromBytesArray(bytes, 0, bytes.Length) - Dim bmp As Bitmap - bmp.Initialize2(In) - Return bmp -End Sub - -'Prints the table to the logs. -Public Sub PrintTable(Table As DBResult) - Log("Tag: " & Table.Tag & ", Columns: " & Table.Columns.Size & ", Rows: " & Table.Rows.Size) - Dim sb As StringBuilder - sb.Initialize - For Each col In Table.Columns.Keys - sb.Append(col).Append(TAB) - Next - Log(sb.ToString) - For Each row() As Object In Table.Rows - Dim sb As StringBuilder - sb.Initialize - For Each record As Object In row - sb.Append(record).Append(TAB) - Next - ToastMessageShow(sb.ToString, True) - Next -End Sub - - \ No newline at end of file diff --git a/B4A - Copy/Durakelo.b4a b/B4A - Copy/Durakelo.b4a deleted file mode 100644 index 8145209..0000000 --- a/B4A - Copy/Durakelo.b4a +++ /dev/null @@ -1,178 +0,0 @@ -Build1=Default,durakelo.keymon.com.mx,HU2_PUBLIC -File1=alcancia.png -File10=fondo_kmt.jpg -File11=historico.bal -File12=itembuttonblue.png -File13=k.png -File14=K-b27c0809.png -File15=kelloggs.png -File16=login.bal -File17=MainPage.bal -File18=Malo.jpg -File19=NoVenta.bal -File2=alerta_amarilla.png -File20=nuevocliente.bal -File21=palomita_verde.png -File22=planfia_logo.png -File23=principal.bal -File24=rechazo.jpg -File25=salma.jpg -File26=senial.jpg -File27=sync.png -File28=Tiendita.jpg -File29=unilever.jpg -File3=carrito.png -File4=Cliente.bal -File5=Clientes.bal -File6=durakelo.png -File7=durakelo1.png -File8=engrane.jpg -File9=espera.gif -FileGroup1=Default Group -FileGroup10=Default Group -FileGroup11=Default Group -FileGroup12=Default Group -FileGroup13=Default Group -FileGroup14=Default Group -FileGroup15=Default Group -FileGroup16=Default Group -FileGroup17=Default Group -FileGroup18=Default Group -FileGroup19=Default Group -FileGroup2=Default Group -FileGroup20=Default Group -FileGroup21=Default Group -FileGroup22=Default Group -FileGroup23=Default Group -FileGroup24=Default Group -FileGroup25=Default Group -FileGroup26=Default Group -FileGroup27=Default Group -FileGroup28=Default Group -FileGroup29=Default Group -FileGroup3=Default Group -FileGroup4=Default Group -FileGroup5=Default Group -FileGroup6=Default Group -FileGroup7=Default Group -FileGroup8=Default Group -FileGroup9=Default Group -Group=Default Group -Library1=b4xpages -Library10=firebasenotifications -Library11=fusedlocationprovider -Library12=gifdecoder -Library13=googlemaps -Library14=gps -Library15=ime -Library16=javaobject -Library17=json -Library18=okhttputils2 -Library19=phone -Library2=baqrcode -Library20=randomaccessfile -Library21=reflection -Library22=runtimepermissions -Library23=serial -Library24=sql -Library25=xcustomlistview -Library26=zxing_scanner -Library27=bitmapcreator -Library3=batteryprogressview -Library4=byteconverter -Library5=camera -Library6=compressstrings -Library7=core -Library8=fileprovider -Library9=firebaseanalytics -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~'End of default text.~\n~~\n~AddApplicationText(~\n~~\n~~\n~)~\n~AddManifestText()~\n~AddManifestText()~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~~\n~~\n~'/////////////// FLP y FBMessageing MOD Inicia /////////////////////~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~'CreateResourceFromFile(Macro, FirebaseAnalytics.Crashlytics)~\n~SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'/////////////// FLP y FBMessageing MOD Termina /////////////////////~\n~~\n~'Si al cargar un mapa de google manda este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText()~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~SetApplicationAttribute(android:exported, "true")~\n~AddManifestText() -Module1=B4XMainPage -Module10=EscPosPrinter -Module11=FirebaseMessaging -Module12=kms_helperSubs -Module13=ManageExternalStorage -Module14=Starter -Module15=Tracker -Module2=BatteryUtilities -Module3=C_Cliente -Module4=C_Clientes -Module5=C_Historico -Module6=C_Nota -Module7=C_NoVenta -Module8=C_Principal -Module9=DBRequestManager -NumberOfFiles=29 -NumberOfLibraries=27 -NumberOfModules=15 -Version=12.5 -@EndOfDesignText@ -#Region Project Attributes - #ApplicationLabel: Durakelo - #VersionCode: 1 - #VersionName: 3.10.09 - 'SupportedOrientations possible values: unspecified, landscape or portrait. - #SupportedOrientations: portrait - #CanInstallToExternalStorage: False - #AdditionalJar: com.android.support:support-v4 - #AdditionalJar: com.google.android.gms:play-services-location -#End Region - -#Region Activity Attributes - #FullScreen: False - #IncludeTitle: True -#End Region - -'#BridgeLogger: True - -Sub Process_Globals - Public ActionBarHomeClicked As Boolean -End Sub - -Sub Globals - -End Sub - -Sub Activity_Create(FirstTime As Boolean) - Dim pm As B4XPagesManager - pm.Initialize(Activity) -End Sub - -'Template version: B4A-1.01 -#Region Delegates - -Sub Activity_ActionBarHomeClick - ActionBarHomeClicked = True - B4XPages.Delegate.Activity_ActionBarHomeClick - ActionBarHomeClicked = False -End Sub - -Sub Activity_KeyPress (KeyCode As Int) As Boolean - Return B4XPages.Delegate.Activity_KeyPress(KeyCode) -End Sub - -Sub Activity_Resume - B4XPages.Delegate.Activity_Resume -End Sub - -Sub Activity_Pause (UserClosed As Boolean) - B4XPages.Delegate.Activity_Pause -End Sub - -Sub Activity_PermissionResult (Permission As String, Result As Boolean) - B4XPages.Delegate.Activity_PermissionResult(Permission, Result) -End Sub - -Sub Create_Menu (Menu As Object) - B4XPages.Delegate.Create_Menu(Menu) -End Sub - -#if Java -public boolean _onCreateOptionsMenu(android.view.Menu menu) { - processBA.raiseEvent(null, "create_menu", menu); - return true; - -} -#End If -#End Region - -'Program code should go into B4XMainPage and other pages. \ No newline at end of file diff --git a/B4A - Copy/Durakelo.b4a.meta b/B4A - Copy/Durakelo.b4a.meta deleted file mode 100644 index fc489ce..0000000 --- a/B4A - Copy/Durakelo.b4a.meta +++ /dev/null @@ -1,51 +0,0 @@ -ModuleBookmarks0= -ModuleBookmarks1= -ModuleBookmarks10= -ModuleBookmarks11= -ModuleBookmarks12= -ModuleBookmarks13= -ModuleBookmarks14= -ModuleBookmarks15= -ModuleBookmarks2= -ModuleBookmarks3= -ModuleBookmarks4= -ModuleBookmarks5= -ModuleBookmarks6= -ModuleBookmarks7= -ModuleBookmarks8= -ModuleBookmarks9= -ModuleBreakpoints0= -ModuleBreakpoints1= -ModuleBreakpoints10= -ModuleBreakpoints11= -ModuleBreakpoints12= -ModuleBreakpoints13= -ModuleBreakpoints14= -ModuleBreakpoints15= -ModuleBreakpoints2= -ModuleBreakpoints3= -ModuleBreakpoints4= -ModuleBreakpoints5= -ModuleBreakpoints6= -ModuleBreakpoints7= -ModuleBreakpoints8= -ModuleBreakpoints9= -ModuleClosedNodes0= -ModuleClosedNodes1= -ModuleClosedNodes10= -ModuleClosedNodes11= -ModuleClosedNodes12= -ModuleClosedNodes13= -ModuleClosedNodes14=1 -ModuleClosedNodes15= -ModuleClosedNodes2= -ModuleClosedNodes3= -ModuleClosedNodes4= -ModuleClosedNodes5= -ModuleClosedNodes6= -ModuleClosedNodes7= -ModuleClosedNodes8= -ModuleClosedNodes9= -NavigationStack=C_Cliente,Tels_Click,306,0,C_Cliente,B_INV_Click,875,0,C_Cliente,B_IMP_Click,447,0,C_Cliente,B_IMP2_Click,670,0,C_Cliente,Guardar_Click,353,5,C_NoVenta,CANCELA_Click,52,1,C_NoVenta,GUARDA_Click,62,6,C_Cliente,initialize,131,0,Visual Designer,Cliente.bal,-100,6,C_Cliente,B4XPage_Created,162,6 -SelectedBuild=0 -VisibleModules=14,1,8,12,6,3,7 diff --git a/B4A - Copy/EscPosPrinter.bas b/B4A - Copy/EscPosPrinter.bas deleted file mode 100644 index 40292c1..0000000 --- a/B4A - Copy/EscPosPrinter.bas +++ /dev/null @@ -1,1148 +0,0 @@ -B4A=true -Group=Default Group -ModulesStructureVersion=1 -Type=Class -Version=9.3 -@EndOfDesignText@ -#IgnoreWarnings: 9 -' 9 = unused variable - -Sub Class_Globals - ' 1.0 Initial version - ' 2.0 Added FeedPaper, changed many WriteString(.." & Chr(number)) instances to WriteBytes(params) - ' This is to avoid Unicode code page transformations on some numbers > 32 - ' Added PrintAndFeedPaper, setRelativePrintPosn, - ' Added user defined characters, DefineCustomCharacter, DeleteCustomCharacter and setUseCustomCharacters - ' Addedhelper methods CreateCustomCharacter, CreateLine, CreateBox and CreateCircle - Private Version As Double = 2.0 ' Printer class version - - Type AnImage(Width As Int, Height As Int, Data() As Byte) - - Private EventName As String 'ignore - Private CallBack As Object 'ignore - - Private Serial1 As Serial - Private Astream As AsyncStreams - Private Connected As Boolean - Private ConnectedError As String - - Dim ESC As String = Chr(27) - Dim FS As String = Chr(28) - Dim GS As String = Chr(29) - - 'Bold and underline don't work well in reversed text - Dim UNREVERSE As String = GS & "B" & Chr(0) - Dim REVERSE As String = GS & "B" & Chr(1) - - ' Character orientation. Print upside down from right margin - Dim UNINVERT As String = ESC & "{0" - Dim INVERT As String = ESC & "{1" - - ' Character rotation clockwise. Not much use without also reversing the printed character sequence - Dim UNROTATE As String = ESC & "V0" - Dim ROTATE As String = ESC & "V1" - - ' Horizontal tab - Dim HT As String = Chr(9) - - ' Character underline - Dim ULINE0 As String = ESC & "-0" - Dim ULINE1 As String = ESC & "-1" - Dim ULINE2 As String = ESC & "-2" - - ' Character emphasis - Dim BOLD As String = ESC & "E1" - Dim NOBOLD As String = ESC & "E0" - - ' Character height and width - Dim SINGLE As String = GS & "!" & Chr(0x00) - Dim HIGH As String = GS & "!" & Chr(0x01) - Dim WIDE As String = GS & "!" & Chr(0x10) - Dim HIGHWIDE As String = GS & "!" & Chr(0x11) - - ' Default settings - Private LEFTJUSTIFY As String = ESC & "a0" - Private LINEDEFAULT As String = ESC & "2" - Private LINSET0 As String = ESC & "$" & Chr(0x0) & Chr(0x0) - Private LMARGIN0 As String = GS & "L" & Chr(0x0) & Chr(0x0) - Private WIDTH0 As String = GS & "W" & Chr(0xff) & Chr(0xff) - Private CHARSPACING0 As String = ESC & " " & Chr(0) - Private CHARFONT0 As String = ESC & "M" & Chr(0) - Dim DEFAULTS As String = CHARSPACING0 & CHARFONT0 & LMARGIN0 & WIDTH0 & LINSET0 & LINEDEFAULT & LEFTJUSTIFY _ - & UNINVERT & UNROTATE & UNREVERSE & NOBOLD & ULINE0 - -End Sub - -'********** -'PUBLIC API -'********** - -'Initialize the object with the parent and event name -Public Sub Initialize(vCallback As Object, vEventName As String) - EventName = vEventName - CallBack = vCallback - Serial1.Initialize("Serial1") - Connected = False - ConnectedError = "" -End Sub - -' Returns any error raised by the last attempt to connect a printer -Public Sub ConnectedErrorMsg As String - Return ConnectedError -End Sub - -' Returns whether a printer is connected or not -Public Sub IsConnected As Boolean - Return Connected -End Sub - -' Returns whether Bluetooth is on or off -Public Sub IsBluetoothOn As Boolean - Return Serial1.IsEnabled -End Sub - -' Ask the user to connect to a printer and return whether she tried or not -' If True then a subsequent Connected event will indicate success or failure -Public Sub Connect As Boolean - 'leos -' Serial1.Connect("88:6B:0F:3E:53:9E") -' Return True - Try - If Starter.MAC_IMPRESORA = "0" Then - Dim PairedDevices As Map - PairedDevices = Serial1.GetPairedDevices - Dim l As List - l.Initialize - For i = 0 To PairedDevices.Size - 1 - l.Add(PairedDevices.GetKeyAt(i)) - Next - Dim Res As Int - Res = InputList(l, "Choose a printer", -1) 'show list with paired devices 'ignore - If Res <> DialogResponse.CANCEL Then - Serial1.Connect(PairedDevices.Get(l.Get(Res))) 'convert the name to mac address - 'Msgbox(PairedDevices.Get(l.Get(Res)),"mac") - Starter.mac_impresora = PairedDevices.Get(l.Get(Res)) - Return True - End If - Return False - Else - Serial1.Connect(Starter.mac_impresora) - ' Starter.mac_impresora = colonia.MAC_IMPRESORA - Return True - End If - Catch - Log(LastException) - End Try -End Sub - -' Disconnect the printer -Public Sub DisConnect - Serial1.Disconnect - Connected = False -End Sub - -' Reset the printer to the power on state -Public Sub Reset - WriteString(ESC & "@") -End Sub - -'-------------- -' Text Commands -'-------------- - -' Print any outstanding characters then feed the paper the specified number of units of 0.125mm -' This is similar to changing LineSpacing before sending CRLF but this has a one off effect -' A full character height is always fed even if units = 0. Units defines the excess over this minimum -Public Sub PrintAndFeedPaper(units As Int) - WriteString(ESC & "J") - Dim params(1) As Byte - params(0) = units - WriteBytes(params) -End Sub - -' Set the distance between characters -Public Sub setCharacterSpacing(spacing As Int) - WriteString(ESC & " ") - Dim params(1) As Byte - params(0) = spacing - WriteBytes(params) -End Sub - -' Set the left inset of the next line to be printed -' Automatically resets to 0 for the following line -' inset is specified in units of 0.125mm -Public Sub setLeftInset(inset As Int) - Dim dh As Int = inset / 256 - Dim dl As Int = inset - dh - WriteString(ESC & "$" & Chr(dl) & Chr(dh)) - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Set the left margin of the print area, must be the first item on a new line -' margin is specified in units of 0.125mm -' This affects barcodes as well as text -Public Sub setLeftMargin(margin As Int) - Dim dh As Int = margin / 256 - Dim dl As Int = margin - dh - WriteString(GS & "L") - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Set the width of the print area, must be the first item on a new line -' margin is specified in units of 0.125mm -' This affects barcodes as well as text -' This appears to function more like a right margin than a print area width when used with LeftMargin -Public Sub setPrintWidth(width As Int) - Dim dh As Int = width / 256 - Dim dl As Int = width - dh - WriteString(GS & "W") - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Set the distance between lines in increments of 0.125mm -' If spacing is < 0 then the default of 30 is set -Public Sub setLineSpacing(spacing As Int) - If spacing < 0 Then - WriteString(ESC & "2") - Else - WriteString(ESC & "3") - Dim params(1) As Byte - params(0) = spacing - WriteBytes(params) - End If -End Sub - -' Set the line content justification, must be the first item on a new line -' 0 left, 1 centre, 2 right -Public Sub setJustify(justify As Int) - WriteString(ESC & "a" & Chr(justify + 48)) -End Sub - -' Set the codepage of the printer -' You need to look at the printer documentation to establish which codepages are supported -Public Sub setCodePage(codepage As Int) - WriteString(ESC & "t") - Dim params(1) As Byte - params(0) = codepage - WriteBytes(params) -End Sub - -' Select the size of the font for printing text. 0 = Font A (12 x 24), 1 = Font B (9 x 17) -' For font B you may want to set the line spacing to a lower value than the default of 30 -' This affects only the size of printed characters. The code page determines the actual character set -' On my printer setting UseCustomCharacters = while Font B is selected crashes the printer and turns it off -Public Sub setCharacterFont(font As Int) - WriteString(ESC & "M" & Chr(Bit.And(1,font))) -End Sub - -' Set the positions of the horizontal tabs -' Each tab is specified as a number of character widths from the beginning of the line -' There may be up to 32 tab positions specified each of size up to 255 characters -' The printer default is that no tabs are defined -Public Sub setTabPositions(tabs() As Int) - WriteString(ESC & "D") - Dim data(tabs.Length+1) As Byte - For i = 0 To tabs.Length - 1 - data(i) = tabs(i) - Next - data(tabs.Length) = 0 - WriteBytes(data) -End Sub - -' Set print position relative to the current position using horizontal units of 0.125mm -' relposn can be negative -' Unless I have misundertood this doesn't work as documented on my printer -' It only seems take effect at the beginning of a line as a one off effect -Public Sub setRelativePrintPosn(relposn As Int) - Dim dh As Int = relposn / 256 - Dim dl As Int = relposn - dh - WriteString(ESC & "\") - Dim params(2) As Byte - params(0) = dl - params(1) = dh - WriteBytes(params) -End Sub - -' Send the contents of an array of bytes to the printer -' Remember that if the printer is expecting text the bytes will be printed as characters in the current code page -Public Sub WriteBytes(data() As Byte) - If Connected Then - Astream.Write(data) - End If -End Sub - -' Send the string to the printer in IBM437 encoding which is the original PC DOS codepage -' This is usually the default codepage for a printer and is CodePage = 0 -' Beware of using WriteString with Chr() to send numeric values as they may be affected by Unicode to codepage translations -' Most character level operations are pre-defined as UPPERCASE string variables for easy concatenation with other string data -Public Sub WriteString(data As String) - WriteString2(data, "IBM437") -End Sub - -' Send the string to the printer in the specified encoding -' You also need to set the printer to a matching encoding using the CodePage property -' Beware of using WriteString2 with Chr() to send numeric values as they may be affected by codepage substitutions -' Most character level operations are pre-defined as UPPERCASE string variables for easy concatenatipon with other string data -Public Sub WriteString2(data As String, encoding As String) - Try - If Connected Then - Astream.Write(data.GetBytes(encoding)) - End If - Catch - Log("Printer error : " & LastException.Message) - AStream_Error - End Try -End Sub - -'----------------------------------------- -' User defined character commands commands -'----------------------------------------- - -' Delete the specified user defined character mode -' This command deletes the pattern defined for the specified code in the font selected by ESC ! -' If the code is subsequently printed in custom character mode the present code page character is printed instead -Public Sub DeleteCustomCharacter(charcode As Int) - WriteString(ESC & "?") - Dim params(1) As Byte - params(0) = charcode - WriteBytes(params) -End Sub - -' Enable the user defined character mode if custom is True, revert to normal if custom is False -' If a custom character has not been defined for a given character code then the default character for the present font is printed -' FontA and FontB have separate definitions for custom characters -' On my printer setting UseCustomCharacters = while Font B is selected crashes the printer and turns it off -' Therefore the cuatom character routines have not been tested on ont B -Public Sub setUseCustomCharacters(custom As Boolean) - If custom Then - WriteString(ESC & "%1") - Else - WriteString(ESC & "%0") - End If -End Sub - -' Define a user defined character -' The allowable character code range is the 95 characters) from ASCII code 32 (0x20) to 126 (0x7E) -' Characters can be defined in either font A (12*24) or font B (9*17) as selected by present setting of CharacterFont -' The programmer must ensure that the correct font size definition is used for the present setting of CharacterFont -' The user-defined character definition is cleared when Reset is invoked or the printer is turned off -' The vertical and horizontal printed resolution is approximaely 180dpi -' Characters are always defined by sets of three bytes in the vertical direction and up to 9 or 12 sets horizontally -' Each byte defines a vertical line of 8 dots. The MSB of each byte is the highest image pixel, the LSB is the lowest -' Byte(0+n) defines the topmost third of the vertical line, Byte(1+n) is below and Byte(2+n) is the lowest -' Set a bit to 1 to print a dot or 0 to not print a dot -' If the lines to the right of the character are blank then there set of three bytes can be omiited from the byte array -' When the user-defined characters are defined in font B (9*17) only the most significant bit of the 3rd byte of data is used -' charcode defines the character code for the character being defined -' bitdata is a Byte array containing the character definitiopn as described above. -' If the length of bitdata is not a multiple of 3 the definition is ignored and a value of -1 returned -Public Sub DefineCustomCharacter(charcode As Int, bitdata() As Byte) As Int - Dim excess As Int = bitdata.Length Mod 3 - If excess <> 0 Then Return -1 - Dim size As Int = bitdata.Length / 3 - WriteString(ESC & "&") - Dim params(4) As Byte - params(0) = 3 - params(1) = charcode - params(2) = charcode - params(3) = size - WriteBytes(params) - WriteBytes(bitdata) - Return 0 -End Sub - -' The third triangle point is hacked into spare bits keeping the generated Int human readable i hex for other shapes -' The shape array contains the character shapes and characterfont is 0 for a 12*24 character andd 1 for a 9*17 character -' Returns a Byte(36) for characterfont = 0 and a Byte(27) for characterfont = 1 -' The returned array can be directly passed to DefineCustomCharacter -' To define a custom character requires specifying up to 288 data points -' This is a lot of data and in most cases it is mainly white space -' This method takes a character definition that defines only the shapes in the character that are to be printed black -' It will be easier use the outputs from CreateLine, CreateTriangle, CreateBox and CreateCircle rather then building the actual Int values -' Each shape is defined by a single Int value containing four parameters in hex format plugs some single bit flags -' Taking the representation of the Int as eight hex characters numbered from the MS end as 0x01234567 -' 0 contains the shape to draw. 0 = Line, 1 = Box, 2 = Circle, 3 = Triangle -' 1 contains a value between 0 and 0xF. This is either an X coordinate or for a circle the radius -' 2 and 3 contain a value between 0 and 0x1F. This is either a Y coordinate or for a circle the quadrants to draw -' 4 contains a value between 0 and 0xF. This is 0 for an empty shope or 1 for a filled shape -' 5 contains a value between 0 and 0xF. This is an X coordinate -' 5 and 6 contain a value between 0 and 0x1F. This is a Y coordinate -' The coordinate 0,0 is at the top left of the character -' Line -' One point of the vector is contained in the top part of the Int and the other in the bottom half -' To define a single point place its coordinates as both sr=start and end of a line -' Box -' The two X,Y coordinates specify the top left and bottom right corners of the box -' Circle -' The left X parameter is now the radius of the circle, the left Y is the quadrants to be drawn -' The right X and Y parameters are the centre of the circle' -' The quadrants to draw are bit ORed together, UpperRight = 0x1, LowerRight = 0x2, LowerLeft = 0x4, Upper Left = 0x8 -' Triangle -' The left X and Y parameters are now one point of the triangle, the right X and Y parameters another point -' The third triangle point is hacked into spare bits keeping the generated Int human readable in hex for the other shapes -' The bit allocations of a shape are as follows. f = fill as 0 or 1, s = shape as 0 to 7, xn as 0 to 15, yn as 0 to 31 -' Shape 0 = line, 1 = box, 2 = triangle, 3 = circle, 4 to 7 = unused -' fsss xxxx -yyy yyyy xxxx xxxx yyyy yyyy -' 0000 220 0000 2222 1111 2221 1111 -' x0 y2 y0 x2 x1 y2 y1 -' The shape array contains the character shapes and characterfont is 0 for a 12*24 character andd 1 for a 9*17 character -' Returns a Byte(36) for characterfont = 0 and a Byte(27) for characterfont = 1 -' The returned array can be directly passed to DefineCustomCharacter -Public Sub CreateCustomCharacter(shapes() As Int, characterfont As Int) As Byte() - Dim masks(8) As Byte - masks(0) = 0x80 - masks(1) = 0x40 - masks(2) = 0x20 - masks(3) = 0x10 - masks(4) = 0x08 - masks(5) = 0x04 - masks(6) = 0x02 - masks(7) = 0x01 - ' rather than try to catch errors whenever we access this array we Dim it to the maximum possible values of X and Y - ' then copy the top left of it to the final character definition array of the correct size - Dim points(16,32) As Byte - ' initialise the character to all white - For x = 0 To 15 - For y = 0 To 31 - points(x,y) = 0 - Next - Next - Dim size As Int = 12 - If characterfont = 1 Then size = 9 - Dim charbyes(size * 3) As Byte - For c = 0 To charbyes.Length - 1 - charbyes(c) = 0 - Next - ' set the points array from the shapes provided - For i = 0 To shapes.Length -1 - Dim fill As Int = Bit.UnsignedShiftRight(Bit.And(0x80000000, shapes(i)), 31) - Dim shape As Int = Bit.UnsignedShiftRight(Bit.And(0x70000000, shapes(i)), 28) - Dim x0 As Int = Bit.UnsignedShiftRight(Bit.And(0x0f000000, shapes(i)), 24) - Dim y0 As Int = Bit.UnsignedShiftRight(Bit.And(0x001f0000, shapes(i)), 16) - Dim x1 As Int = Bit.UnsignedShiftRight(Bit.And(0x00000f00, shapes(i)), 8) - Dim y1 As Int = Bit.And(0x0000001f, shapes(i)) - Dim x2 As Int = Bit.UnsignedShiftRight(Bit.And(0x0000f000, shapes(i)), 12) - Dim y2 As Int = Bit.UnsignedShiftRight(Bit.And(0x00e00000, shapes(i)), 18) + Bit.UnsignedShiftRight(Bit.And(0x000000e0, shapes(i)), 5) - ' The bit allocations of a shape are as follows. f = fill as 0 or 1, s = shape as 0 to 7, xn as 0 to 15, yn as 0 to 31 - ' Shape 0 = line, 1 = box, 2 = triangle, 3 = circle, 4 to 7 = unused - ' fsss xxxx -yyy yyyy xxxx xxxx yyyy yyyy - ' 0000 220 0000 2222 1111 2221 1111 - ' x0 y2 y0 x2 x1 y2 y1 - Dim logmsg As String = ": Fill=" & fill & " : Points " & x0 & "," & y0 & " " & x1 & "," & y1 & " " & x2 & "," & y2 - If shape = 3 Then - Log("Triangle " & logmsg) - PlotTriangle(x0, y0, x1, y1, x2, y2, points, fill) - else If shape = 2 Then - Log("Circle " & logmsg) - PlotCircle(x0, y0, x1, y1, points, fill) - Else If shape = 1 Then - Log("Box " & logmsg) - PlotBox(x0, y0, x1, y1, points, fill) - Else - Log("Line " & logmsg) - PlotLine(x0, y0, x1, y1, points) - End If - ' map the points array onto the character definition array - For x = 0 To size -1 ' 9 or 12 horizontal bytes - For y = 0 To 2 ' 3 vertical bytes - Dim bits As Byte = 0 - For b = 0 To 7 ' 8 vertical bits - If points(x, y*8+b) <> 0 Then - bits = Bit.Or(bits, masks(b)) - End If - Next - charbyes(x*3+y) = bits - Next - Next - Next - Return charbyes -End Sub - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a line in a custom character -' The line starts at X0,Y0 and ends at X1,Y1 -Public Sub CreateLine(x0 As Int, y0 As Int, x1 As Int, y1 As Int) As Int - Dim line As Int = 0 - line = line + Bit.ShiftLeft(Bit.And(0xf,x0), 24) - line = line + Bit.ShiftLeft(Bit.And(0x1f,y0), 16) - line = line + Bit.ShiftLeft(Bit.And(0xf,x1), 8) - line = line + Bit.And(0x1f,y1) - Return line -End Sub - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a circle in a custom character -' The circle is centred on X1,Y1 and the quadrants to draw are bit ORed together -' UpperRight = 0x1, LowerRight = 0x2, LowerLeft = 0x4, Upper Left = 0x8 -Public Sub CreateCircle(radius As Int, quadrants As Int, x1 As Int, y1 As Int, fill As Boolean) As Int - Dim circle As Int = 0x20000000 - If fill Then circle = circle + 0x80000000 - circle = circle + Bit.ShiftLeft(radius, 24) - circle = circle + Bit.ShiftLeft(quadrants, 16) - circle = circle + Bit.ShiftLeft(x1, 8) - circle = circle + y1 - Return circle -End Sub - - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a triangle in a custom character -' The triangles corners are at X0,Y0 X1,Y1 and X2,Y2 -Public Sub CreateTriangle(x0 As Int, y0 As Int, x1 As Int, y1 As Int, x2 As Int, y2 As Int, fill As Boolean) As Int - Dim triangle As Int = 0x30000000 - If fill Then triangle = triangle + 0x80000000 - triangle = triangle + Bit.ShiftLeft(Bit.And(0xf,x0), 24) - triangle = triangle + Bit.ShiftLeft(Bit.And(0x1f,y0), 16) - triangle = triangle + Bit.ShiftLeft(Bit.And(0xf,x1), 8) - triangle = triangle + Bit.And(0x1f,y1) - triangle = triangle + Bit.ShiftLeft(Bit.And(0xf,x2), 12) ' extra X - triangle = triangle + Bit.ShiftLeft(Bit.And(0x7,y2), 5) ' extra Y lsbits * 3 - triangle = triangle + Bit.ShiftLeft(Bit.And(0x18,y2), 18) ' extra Y msbits * 2 - Return triangle -End Sub - -' This is a higher level method that builds the Int values to pass to CreateCustomCharacter in the shapes array -' Create the value to draw a box in a custom character -' The box top left start is X0,Y0 and bottom right is X1,Y1 -Public Sub CreateBox(x0 As Int, y0 As Int, x1 As Int, y1 As Int, fill As Boolean) As Int - Dim box As Int = 0x10000000 - If fill Then box = box + 0x80000000 - box = box + Bit.ShiftLeft(Bit.And(0xf,x0), 24) - box = box + Bit.ShiftLeft(Bit.And(0x1f,y0), 16) - box = box + Bit.ShiftLeft(Bit.And(0xf,x1), 8) - box = box + Bit.And(0x1f,y1) - Return box -End Sub - -'----------------------------------------- -' Private custom character drawing methods -'----------------------------------------- - -Private Sub PlotTriangle(x0 As Int, y0 As Int, x1 As Int, y1 As Int, x2 As Int, y2 As Int, points(,) As Byte, Fill As Int) - ' This is a pretty crude algorithm, but it is simple, works and it isn't invoked often - PlotLine(x0, y0, x1, y1, points) - PlotLine(x1, y1, x2, y2, points) - PlotLine(x2, y2, x0, y0, points) - If Fill > 0 Then - FillTriangle(x0, y0, x1, y1, x2, y2, points) - End If -End Sub - -Private Sub FillTriangle(x0 As Int, y0 As Int, x1 As Int, y1 As Int, x2 As Int, y2 As Int, points(,) As Byte) - ' first sort the three vertices by y-coordinate ascending so v0 Is the topmost vertice */ - Dim tx, ty As Int - If y0 > y1 Then - tx = x0 : ty = y0 - x0 = x1 : y0 = y1 - x1 = tx : y1 = ty - End If - If y0 > y2 Then - tx = x0 : ty = y0 - x0 = x2 : y0 = y2 - x2 = tx : y2 = ty - End If - If y1 > y2 Then - tx = x1 : ty = y1 - x1 = x2 : y1 = y2 - x2 = tx : y2 = ty - End If - - Dim dx0, dx1, dx2 As Double - Dim x3, x4, y3, y4 As Double - Dim inc As Int - - If y1 - y0 > 0 Then dx0=(x1-x0)/(y1-y0) Else dx0=0 - If y2 - y0 > 0 Then dx1=(x2-x0)/(y2-y0) Else dx1=0 - If y2 - y1 > 0 Then dx2=(x2-x1)/(y2-y1) Else dx2=0 - x3 = x0 : x4 = x0 - y3 = y0 : y4 = y0 - If dx0 > dx1 Then - While - Do While y3 <= y1 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x, y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx1 : x4 = x4 + dx0 - Loop - x4=x1 - y4=y1 - Do While y3 <= y2 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x ,y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx1 : x4 = x4 + dx2 - Loop - Else - While - Do While y3 <= y1 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x, y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx0 : x4 = x4 +dx1 - Loop - x3=x1 - y3=y1 - Do While y3<=y2 - If x3 > x4 Then inc = -1 Else inc = 1 - For x = x3 To x4 Step inc - points(x, y3) = 1 - Next - y3 = y3 + 1 : y4 = y4 + 1 : x3 = x3 + dx2 : x4 = x4 + dx1 - Loop - End If -End Sub - -Private Sub PlotBox(x0 As Int, y0 As Int, x1 As Int, y1 As Int, points(,) As Byte, Fill As Int) - ' This is a pretty crude algorithm, but it is simple, works and itsn't invoked often - PlotLine(x0, y0, x0, y1, points) - PlotLine(x0, y0, x1, y0, points) - PlotLine(x1, y0, x1, y1, points) - PlotLine(x0, y1, x1, y1, points) - If Fill > 0 Then - For x = x0 To x1 - PlotLine(x, y0, x, y1, points) - Next - End If -End Sub - - -Private Sub PlotCircle(radius As Int, quadrants As Int, x1 As Int, y1 As Int, points(,) As Byte, fill As Int) - ' This is a pretty crude algorithm, but it is simple, works and itsn't invoked often - Dim mask As Int = 1 - For q = 3 To 0 Step -1 - If Bit.And(quadrants, mask) <> 0 Then - For i = q*90 To q*90+90 Step 1 - Dim x,y As Double - x = x1 - SinD(i)*radius - y = y1 - CosD(i)*radius - If fill > 0 Then - PlotLine(x1, y1, x, y, points) - Else - points(Round(x), Round(y)) = 1 - End If - Next - End If - mask = Bit.ShiftLeft(mask, 1) - Next -End Sub - -' Bresenham's line algorithm - see Wikipedia -Private Sub PlotLine(x0 As Int, y0 As Int, x1 As Int, y1 As Int, points(,) As Byte ) - If Abs(y1 - y0) < Abs(x1 - x0) Then - If x0 > x1 Then - PlotLineLow(x1, y1, x0, y0, points) - Else - PlotLineLow(x0, y0, x1, y1, points) - End If - Else - If y0 > y1 Then - PlotLineHigh(x1, y1, x0, y0, points) - Else - PlotLineHigh(x0, y0, x1, y1, points) - End If - End If -End Sub - -Private Sub PlotLineHigh(x0 As Int, y0 As Int, x1 As Int, y1 As Int, points(,) As Byte ) - Dim dx As Int = x1 - x0 - Dim dy As Int = y1 - y0 - Dim xi As Int = 1 - If dx < 0 Then - xi = -1 - dx = -dx - End If - Dim D As Int = 2*dx - dy - Dim x As Int = x0 - For y = y0 To y1 - points(x,y) = 1 - If D > 0 Then - x = x + xi - D = D - 2*dy - End If - D = D + 2*dx - Next -End Sub - -Private Sub PlotLineLow(x0 As Int, y0 As Int, x1 As Int,y1 As Int, points(,) As Byte ) - Dim dx As Int = x1 - x0 - Dim dy As Int = y1 - y0 - Dim yi As Int = 1 - If dy < 0 Then - yi = -1 - dy = -dy - End If - Dim D As Int = 2*dy - dx - Dim y As Int = y0 - For x = x0 To x1 - points(x,y) = 1 - If D > 0 Then - y = y + yi - D = D - 2*dx - End If - D = D + 2*dy - Next -End Sub - - -'------------------- -' Image commands -'------------------- -' There are two different image printing options with different pixel formats. -' PrintImage prints an entire image at once with a maximum size of 576x512 -' PrintImage2 prints a slice of an image with a height of 8 or 24 and a maximum width of 576 -' One or other may look better on your particular printer - -' Printer support method for pre-processing images to print -' Convert the bitmap supplied to an array of pixel values representing the luminance value of each original pixel -Sub ImageToBWIMage(bmp As Bitmap) As AnImage - Dim BC As BitmapCreator 'ignore - Dim W As Int = bmp.Width - Dim H As Int = bmp.Height - Dim pixels(W * H) As Byte - - For y = 0 To H - 1 - For x = 0 To W - 1 - Dim j As Int = bmp.GetPixel(x, y) - ' convert color to approximate luminance value - Dim col As ARGBColor - BC.ColorToARGB(j, col ) - Dim lum As Int = col.r * 0.2 + col.b*0.1 + col.g*0.7 - If lum> 255 Then lum = 255 - ' save the pixel luminance - pixels(y*W + x) = lum - Next - Next - Dim ret As AnImage - ret.Width = bmp.Width - ret.Height = bmp.Height - ret.Data = pixels - Return ret -End Sub - -' Printer support method for pre-processing images to print -' Convert the array of luminance values to an array of 0s and 1s according to the threshold value -Sub ThresholdImage(img As AnImage, threshold As Int) As AnImage 'ignore - Dim pixels(img.Data.Length) As Byte - For i = 0 To pixels.Length - 1 - Dim lum As Int = Bit.And(img.Data(i), 0xff) ' bytes are signed values - If lum < threshold Then - lum = 1 - Else - lum = 0 - End If - pixels(i) = lum - Next - Dim ret As AnImage - ret.Width = img.Width - ret.Height = img.Height - ret.Data = pixels - Return ret -End Sub - -' Printer support method for pre-processing images to print -' Convert the array of luminance values to a dithered array of 0s and 1s according to the threshold value -' The dithering algorithm is the simplest one-dimensional error diffusion algorithm -' Normally threshold should be 128 but some images may look better with a little more or less. -' This algorithm tends to produce vertical lines. DitherImage2D will probably look far better -Sub DitherImage1D(img As AnImage, threshold As Int) As AnImage 'ignore - Dim pixels(img.Data.Length) As Byte - Dim error As Int - For y = 0 To img.Height - 1 - error = 0 ' reset on each new line - For x = 0 To img.Width - 1 - Dim lum As Int = Bit.And(img.Data(y*img.Width + x), 0xff) ' bytes are signed values - lum = lum + error - If lum < threshold Then - error = lum - lum = 1 - Else - error = lum - 255 - lum = 0 - End If - pixels(y*img.Width + x) = lum - Next - Next - Dim ret As AnImage - ret.Width = img.Width - ret.Height = img.Height - ret.Data = pixels - Return ret -End Sub - - -' Printer support method for pre-processing images to print -' Convert the array of luminance values to a dithered array of 0s and 1s according to the threshold value -' The dithering algorithm is the simplest two-dimensional error diffusion algorithm -' Normally threshold should be 128 but some images may look better with a little more or less. -' Anything more sophisticated might be overkill considering the image quality of most thermal printers -Sub DitherImage2D(img As AnImage, threshold As Int) As AnImage - Dim pixels(img.Data.Length) As Byte - Dim xerror As Int - Dim yerrors(img.Width) As Int - For i = 0 To yerrors.Length -1 - yerrors(0) = 0 - Next - For y = 0 To img.Height - 1 - xerror = 0 ' reset on each new line - For x = 0 To img.Width - 1 - Dim lum As Int = Bit.And(img.Data(y*img.Width + x), 0xff) ' bytes are signed values - lum = lum + xerror + yerrors(x) - If lum < threshold Then - xerror = lum/2 - yerrors(x) = xerror - lum = 1 - Else - xerror = (lum - 255)/2 - yerrors(x) = xerror - lum = 0 - End If - pixels(y*img.Width + x) = lum - Next - Next - Dim ret As AnImage - ret.Width = img.Width - ret.Height = img.Height - ret.Data = pixels - Return ret -End Sub - - -' GS v0 printing -'--------------- - -' Prints the given image at the specified height and width using the "GS v" command -' Image data is supplied as bytes each containing 8 bits of horizontal image data -' The top left of the image is Byte(0) and the bottom right is Byte(width*height-1) -' MSB of the byte is the leftmost image pixel, the LSB is the rightmost -' Maximum width is 72 bytes (576 bits), Maximum height is 512 bytes -' The printed pixels are square -' Returns status 0 : OK, -1 : too wide, -2 : too high, -3 : array too small -' The printer can take a long time to process the data and start printing -Public Sub PrintImage(img As AnImage) As Int - ' max width = 72 ' 72mm/576 bits wide - ' max height = 512 ' 64mm/512 bits high - If img.width > 72 Then Return -1 - If img.height > 512 Then Return -2 - If img.data.Length < img.width * img.height Then Return -3 - Dim xh As Int = img.width / 256 - Dim xl As Int = img.width - xh * 256 - Dim yh As Int = img.height / 256 - Dim yl As Int = img.height - yh * 256 - Dim params(5) As Byte - params(0) = 0 ' - params(1) = xl - params(2) = xh - params(3) = yl - params(4) = yh - WriteString(GS & "v0") - WriteBytes(params) - WriteBytes(img.data) - WriteString(CRLF) - Return 0 -End Sub - -' Printer support method for pre-processing images to print by PrintImage -' Takes an array of image pixels and packs it for use with PrintImage -' Each byte in the imagedata array is a single pixel valued zero or non-zero for white and black -' The returned array is 8 x smaller and packs 8 horizontal black or white pixels into each byte -' If the horizontal size of the image is not a multiple of 8 it will be truncated so that it is. -Public Sub PackImage(imagedata As AnImage) As AnImage - Dim xbytes As Int = imagedata.width/8 - Dim pixels(xbytes * imagedata.height) As Byte - Dim masks(8) As Byte - masks(0) = 0x80 - masks(1) = 0x40 - masks(2) = 0x20 - masks(3) = 0x10 - masks(4) = 0x08 - masks(5) = 0x04 - masks(6) = 0x02 - masks(7) = 0x01 - Dim index As Int = 0 - For y = 0 To imagedata.Height - 1 - For x = 0 To xbytes - 1 - Dim xbyte As Byte = 0 - For b = 0 To 7 - ' get a pixel - Dim pix As Byte = imagedata.Data(index) - If pix <> 0 Then - xbyte = xbyte + masks(b) - End If - index = index + 1 - Next - pixels(y*xbytes + x) = xbyte - Next - Next - Dim ret As AnImage - ret.Width = xbytes - ret.Height = imagedata.Height - ret.Data = pixels - Return ret -End Sub - - -' ESC * printing -'--------------- - -' Prints the given image slice at the specified height and width using the "ESC *" command -' Image data is supplied as bytes each containing 8 bits of vertical image data -' Pixels are not square, the width:height ratio varies with density and line height -' Returns status 0 = OK, -1 = too wide, -2 = too high, -3 = wrong array length -' Line spacing needs to be set to 0 if printing consecutive slices -' The printed pixels are not square, the ratio varies with the highdensity and dots24 parameter settings -' The highdensity parameter chooses high or low horizontal bit density when printed -' The dots24 parameter chooses 8 or 24 bit data slice height when printed -' Not(highdensity) -' Maximum width is 288 bits. Horizontal dpi is approximately 90 -' MSB of each byte is the highest image pixel, the LSB is the lowest -' highdensity -' Maximum width is 576 bits. Horizontal dpi is approximately 180 -' Not(dots24) -' Vertical printed height is 8 bits at approximately 60dpi -' One byte in the data Array represents one vertical line when printed -' Array size is the same as the width -' MSB of each byte is the highest image pixel, the LSB is the lowest -' dots24 -' Vertical printed height is 24 bits at approximately 180dpi -' Three consecutive bytes in the data array represent one vertical 24bit line when printed -' Array size is 3 times the width -' Byte(n+0) is the highest, byte (n+2) us the lowest -' MSB of each byte is the highest image pixel, the LSB is the lowest -Public Sub PrintImage2(width As Int, data() As Byte, highdensity As Boolean, dotds24 As Boolean) As Int - Dim d As String = Chr(0) - If Not(highdensity) And Not(dotds24 ) Then - d = Chr(0) - If width > 288 Then Return -1 - If data.Length <> width Then Return -3 - Else If highdensity And Not(dotds24) Then - d = Chr(1) - If width > 576 Then Return -1 - If data.Length <> width Then Return -3 - Else If Not(highdensity) And dotds24 Then - d = Chr(32) - If width > 288 Then Return -1 - If data.Length <> width*3 Then Return -3 - Else ' highdensity And dotds24 - d = Chr(33) - If width > 576 Then Return -1 - If data.Length <> width*3 Then Return -3 - End If - Dim xh As Int = width / 256 - Dim xl As Int = width - xh * 256 - Dim params(2) As Byte - params(0) = xl - params(1) = xh - WriteString(ESC & "*" & d) - WriteBytes(params) - WriteBytes(data) - WriteString(CRLF) - Return 0 -End Sub - -' Printer support method for pre-processing images to print by PrintImage2 -' Takes an array of image pixels and packs one slice of it for use with PrintImage2 -' Each byte in the imagedata array is a single pixel valued zero or non-zero for white and black -' The returned array packs 8 vertical black or white pixels into each byte -' If dots24 is True then the slice is 24 pixels high otherwise it is 8 pixels high -Public Sub PackImageSlice(img As AnImage, slice As Int, dots24 As Boolean) As Byte() - Dim bytes As Int = img.width - If dots24 Then - Dim pixels(bytes * 3) As Byte - Dim slicestart As Int = slice * bytes * 8 * 3 - Else - Dim pixels(bytes) As Byte - Dim slicestart As Int = slice * bytes * 8 - End If - - Dim masks(8) As Byte - masks(0) = 0x80 - masks(1) = 0x40 - masks(2) = 0x20 - masks(3) = 0x10 - masks(4) = 0x08 - masks(5) = 0x04 - masks(6) = 0x02 - masks(7) = 0x01 - ' You could compress this into a single code block but I left it as two to make it more obvious what's happening - If dots24 Then - For x = 0 To bytes - 1 - For s = 0 To 2 - Dim xbyte As Byte = 0 - For b = 0 To 7 - ' get a pixel - Dim pix As Byte = img.Data(slicestart + ((b + s*8) * bytes) + x) - If pix <> 0 Then - xbyte = xbyte + masks(b) - End If - Next - pixels(x*3+s) = xbyte - Next - Next - Else - For x = 0 To bytes - 1 - Dim xbyte As Byte = 0 - For b = 0 To 7 - ' get a pixel - Dim pix As Byte = img.Data(slicestart + (b * bytes) + x) - If pix <> 0 Then - xbyte = xbyte + masks(b) - End If - Next - pixels(x) = xbyte - Next - End If - Return pixels -End Sub - -'---------------- -'Barcode commands -'---------------- - -' Set the height of a 2D bar code as number of dots vertically, 1 to 255 -' Automatically resets to the default after printing the barcode -Public Sub setBarCodeHeight(height As Int) - WriteString(GS & "h") - Dim params(1) As Byte - params(0) = height - WriteBytes(params) -End Sub - -' Set the left inset of a 2D barcode, 0 to 255 -' This does not reset on receipt of RESET -Public Sub setBarCodeLeft(left As Int) - WriteString(GS & "x") - Dim params(1) As Byte - params(0) = left - WriteBytes(params) -End Sub - -' Set the width of each bar in a 2D barcode. width value is 2 to 6, default is 3 -' 2 = 0.250, 3 - 0.375, 4 = 0.560, 5 = 0.625, 6 = 0.75 -' Resets to default after printing the barcode -Public Sub setBarCodeWidth(width As Int) - WriteString(GS & "w") - Dim params(1) As Byte - params(0) = width - WriteBytes(params) -End Sub - -'Selects the printing position of HRI (Human Readable Interpretation) characters when printing a 2D bar code. -'0 Not printed, 1 Above the bar code, 2 Below the bar code, 3 Both above And below the bar code -' Automatically resets to the default of 0 after printing the barcode -' The docs say this can be Chr(0, 1 2 or 3) or "0" "1" "2" or "3" but the numeric characters don't work -Public Sub setHriPosn(posn As Int) - WriteString(GS & "H") - Dim params(1) As Byte - params(0) = posn - WriteBytes(params) -End Sub - -'Selects the font for HRI (Human Readable Interpretation) characters when printing a 2D bar code. -'0 Font A (12 x 24), 1 Font B (9 x 17) -' Automatically resets to the default of 0 after printing the barcode -' The docs say this can be Chr(0 or 1) or "0" or "1" but the numeric characters don't work -Public Sub setHriFont(font As Int) - WriteString(GS & "f" & Chr(font)) -End Sub - -' If given invalid data no barcode is printed, only strange characters -' CODABAR needs any of A,B,C or D at the start and end of the barcode. Some decoders may not like them anywhere else -' Bartype Code Number of characters Permitted values -' A | UPC-A | 11 or 12 characters | 0 to 9 | The 12th printed character is always the check digit -' B | UPC-E | 6 characters | 0 to 9 | The 12th printed character is always the check digit -' C | EAN13 | 12 or 13 characters | 0 to 9 | The 12th printed character is always the check digit -' D | EAN8 | 7 or 8 characters | 0 to 9 | The 8th printed character is always the check digit -' E | CODE39 | 1 or more characters | 0 to 9, A to Z, Space $ % + - . / -' F | ITF | 1 or more characters | 0 to 9 | even number of characters only -' G | CODABAR| 3 to 255 characters | 0 to 9, A to D, $ + - . / : | needs any of A,B,C or D at the start and end -' H | CODE93 | 1 to 255 characters | Same as CODE39 -' I | CODE128| 2 to 255 characters | entire 7 bit ASCII set -Public Sub WriteBarCode(bartype As String, data As String) - Dim databytes() As Byte = data.GetBytes("ASCII") - Dim dlow As Int = databytes.Length - Log("Barcode " & bartype & ", Size " & dlow & ", " & data) - WriteString(GS & "k" & bartype.ToUpperCase.CharAt(0)) - Dim params(1) As Byte - params(0) = dlow - WriteBytes(params) - WriteBytes(databytes) -End Sub - -' On my printer QR codes don't seem to be able to be decoded and on high ECs look obviously wrong :( -' size is 1 to 40, 0 is auto-size. Successive versions increase module size by 4 each side -' size = 1 is 21x21, 2 = 25x25 ... size 40 = 177x177 -' EC is error correction level, "L"(7%) or "M"(15%) or "Q"(25%) or "H"(30%) -' scale is 1 to 8, 1 is smallest, 8 is largest -Public Sub WriteQRCode(size As Int, EC As String, scale As Int, data As String) - Dim databytes() As Byte = data.GetBytes("ISO-8859-1") - Dim dhigh As Int = databytes.Length / 256 - Dim dlow As Int = databytes.Length - dhigh*256 - Log("QR Code : Size " & size & ", EC " & EC & ", Scale " & scale & ", Size " & dlow & " " & dhigh & " : Data = " & data) - Dim params(3) As Byte - params(0) = scale - params(1) = dlow - params(2) = dhigh - WriteString(ESC & "Z" & Chr(size) & EC.ToUpperCase.CharAt(0)) - WriteBytes(params) - WriteBytes(databytes) -End Sub - - -'**************** -' PRIVATE METHODS -'**************** - -'----------------------- -' Internal Serial Events -'----------------------- - -Private Sub Serial1_Connected (Success As Boolean) - If Success Then - Astream.Initialize(Serial1.InputStream, Serial1.OutputStream, "astream") - Connected = True - ConnectedError = "" - Serial1.Listen - Else - Connected = False - ConnectedError = LastException.Message - End If - If SubExists(CallBack, EventName & "_Connected") Then - CallSub2(CallBack, EventName & "_Connected", Success) - End If -End Sub - -'---------------------------- -' Internal AsyncStream Events -'---------------------------- - -Private Sub AStream_NewData (Buffer() As Byte) - If SubExists(CallBack, EventName & "_NewData") Then - CallSub2(CallBack, EventName & "_NewData", Buffer) - End If - Log("Data " & Buffer(0)) -End Sub - -Private Sub AStream_Error - If SubExists(CallBack, EventName & "_Error") Then - CallSub(CallBack, EventName & "_Error") - End If -End Sub - -Private Sub AStream_Terminated - Connected = False - If SubExists(CallBack, EventName & "_Terminated") Then - CallSub(CallBack, EventName & "_Terminated") - End If -End Sub diff --git a/B4A - Copy/Files/alcancia.png b/B4A - Copy/Files/alcancia.png deleted file mode 100644 index 5f5cd3d014c4d8e4b1821d18f45a824af548cfef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2249 zcmV;)2sZbLP)lwu$U!@x?s$D$Itm zTg44qn^xt!UHx^XuJC!4<-ZIhJV^wc;i69kY zG{D?L-Rom+b%>a@WTuABm*6Jx#X?<(ABjmiOmY3&8PJNk(6FwAn@-Y|=vMJ0p-;8A z`x6n_GkwDCdH3xaWOI`gf`i6zhgsB-u+xiaIt+Vb!fo$ycPX?3H+Y)X?y@pA`DuwpXHRxS%({2u4}cpX?FJSO$aXs4QN2J-zjX zk-Y=mL|4k(FZI9jkC?e)B%m|C{D+h8#!o)Ro#fua#wUzE%PT$NDntY-!yQ4q2XUCX zf|KB{c;n>Ze8g~Hd4g;=#MNo?Jw%E0MZCe>7*!KBbIi{+5~O-DAO`PiaY_oaaWcdH zN~U$-W7n5=h$gS64G#F<1d^n)HG?@o>o9#jj`X^IB}u4-qy_X%uBrOZjDae$e93w< z@V~<`j`jF@Ahy4kIvOrvi1y?}JZ#OyFA900OVD>;p8miMr@s}mC&hc3>o_Fjjcu)8 zRa*tlmla;44-%~Q)G1S1ipuxt0{(=wyo53RroWyNGE)BmT|Q=d&?e;gvB-$%(A!sQ zT`+Jq4i-!Tt92Y|i|XcgYZ^m)zc1WDOsFlQPMShnzo^g2@qO5>!wKn`{Gkh2Hb30{ zDwxif^R*KWOO2e=l`v(qrp5*M(Wke=&-Ig=EN6u^_xS7Njc9^yB(qC>kv2!I{Y+q! z2%l{Tuh<`Kou?vsTf*C{bnLbRH&kc$#vJ|5Bsc#XMH$~5rHFIO{_us_f;6W_*C(kZ z{i$PeZF4@Z*nfW?xK_yO>BU$Zf9`qh+pFQU8vDDPXf4FJVE=7FMC}wh)EJ|}IJ9B` ze6YH=$E<~_s(1VW0nE6oMeEG|t3ru+OIQxJ%ZIb$IAMe>WZ-i(;MD8FUhl+pK~+WB z7vLGAqI-qX;8<(?$NpwD|firx&D(KcH6m67d>7Y2(?ZBC8h`cw(!>Q+UjVXv2#NBt1)GMCky zVfI(7vyX%{zXtJrzL66{jH+BaZ!7Ez8$Q&rx}%{>F+LbYt7h@nxn4Bz&r=Z67LSxt z80PR=fK@R{+0g59k%T(~&AQjTRb?qJUQ<?m?~q^FkwkpR{EK@Lb3zZgDIhA7Ar8$P(JQ|BVZ+npbToedw;j@yoS0xm2i2fGlC^R7ReeN@*c&p$ATI``4X; zOO)^xp4)FX`frrQva;ZgIvy~C8WI**WRp~tv3mf6u&5XPgVlO5;@Z;PsWb zqL+0m1X04fnlOT|{FaU=AGaD4AE_8Djc@mT?^oaHi@9G4Amd9#)uWD0gGZ%$FB+dq z*cAt=frN@A5Lq;kP?a<{gGP0yop6I26`yosoHpCK-+{Pr!^1W{+dLqWZ8HJYH*Dgj zRT+wF{l_uW%?cKj%RqVNi}J3qk5H{Tan5e?o6z@F3TMuLhnHHV`fY3uR!SeXa!RjC zmT5aX^wg0sYH3ffGEw5zPRURtlA#-|?UJp1L_nKFZJy>Xzs7X5Zgo?>EqQO=<`UjV zXX9E~G8XxOoVGY04u|b=^P{hmp@74&CF}uCwC3f_Z!mc8Oc@>sJ^@rlt+&|2_GA>9 zial&kN|CA1!}g>EF@zq}MhjvbCyw6ECR#y9(mbFAF&^oH;q>kF%~5y8^hmSF6KH8c zjLh11!}+G>NrQ*0mnJC*H3S&~KZ8LFV&u;n8JOM|)%^KBe0gThz@(Q!2s}`bCShf^ zxTdqLj@eVRT>D13SAMAy9>jfehZ3e4kxZ+J=_f(pI6;zxeNxsWBtQ6$xbG%WB&?m6 z#J&lJIrzs<1O}ASuZFLgQLQ6P>r>`o!vnV&){?McO4f&s4>q7j5BNv#36M2&V-J9C z5DHWJL=X7X{MoS*eMsCn!$Bt-G($+7x*+JSKOS)gnprQuAHDt=~Ja`{x+Kj}0>(bV2rx@DTdDnt`o;_Z0000000000000000000000000000000BZ9; XM2de;kmugb00000NkvXXu0mjfy>m~8 diff --git a/B4A - Copy/Files/alert2.png b/B4A - Copy/Files/alert2.png deleted file mode 100644 index 44d3b7e651884f30ca0811371860a2c872077175..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 632 zcmV-;0*C#HP)a1y& zFeNaQ#z>D?Pp5~l@C6?oy~8sZU}IxI;&C5S^*RX4g3j(P>{qMnPinP$E4E$LLaawd zxnek%yAhe62RbqWgdrq^ANpD6_~aynggAY^(YRg~;@v0DbNvqNboym@YHBGwJq<@$ z?d@$S@9ezE?CmWRJ#%Duc*B^R3lx$242WOzK{1WrMjcw z-v5w}lckIWi}Lw_qDo3|mHN%`gnbxlHnWuTVAa-E_dYWdfCP^HQ;1ED$MadV-M-B| z?^qsqIKpekS=WQ}^2EeiLaAF}ZRSx95_bDVsrP40^RXUWeHWs5EgHQPk}^fGlYhI? z7ZShfA-TfX#^p-oQ5`+#S+9lSo8#jTvz$LL94Eq1h#qt#kt9MPaAUF7$5v}~!Lru$ zkBjl^|Gm>9vFC}z*(-*zl%(`RoYGSo*q8FFDMYE@IB%cY_Ge7}ISA*k00RI&q3etP SUq&PV000029qX%a+GMXQ$LSen>t%?#a*r8U}Olp5mHS_w@%R25Nc zdMtxVQEHiKs_n5>1tUaiQU_fyTAKN_bEe;W_uTvLeeZtn-Sf_sOh{${l$*1wGXR1B z073(h@PTwd7AdWygx;ALC5(!)iaG{^MPZcpDnXWtDh8*5(amz8V*)5AC%1doZgmt&)m&Fok3=LAO)ZF)7DSSSs`;AjL=N=e7mD@gM@Ydy zBos4%*rBXai0`Z*3`)9_)832ha4}UmtV~xj2`E4tU}!iRI10pf%YcA30=R~P0d`+a zIE8?v+#atMr)86r2ZqI$RNbiPKpnAY$#Ck$)_4JbFtfK+zCGF|xtum){_|yYZgx|0 zM6`5Cy-u+7lzYsm%cMuxJ6X@4_7U>%_UlXo=AH7n)uC3!Zv-4s(x4%IPpNg1Mi zeqh7DbtmhYZ}Rb7Dj6p_y1cLxo!V=v&5bAfic9%VybGterLO*Wxh&mWBwJVv;O(qQ zLC%#b)k^U;4y_Q@mv0doslrXpnXI5I zB3swZ1IM%xFcb25s-R)T=a)!djew=S@RW2>tRT=}#Cy5Xjyh+0dV=Y?pXs_{kYHxj zIzw%EfKK=Is^i?%WNl@ZRfn@0>npRGQYUr0^St{>IR#H|w2L|Sy*%Te_LN*OZ zvARQdfSz15S6GTA(}HYFNBJ62O$YG%_>g^qJv~s` ztkqGMD9W9_|HGX7x@U_J+3H9`IvY5y*~By6k8GSjNuBy*y1jZkzf*to%e}3d5eX11 z0bcjdl)vEf={UK{pO{pgbCFkNcNg92^ zIgK?hZrQ|z*&>H=6}N>${3t;ieM5P2xaLv*cq(&&L9UqJBfhla1dc7moP5l44^0Z? zsXq^@sa{=RZ1U|6$~D#bS~zmX_{q=H)fVyvr?|)6TGiZD3EW}wxJOObpK6+&xW!%< zWW7^S&8zK$O^H$OSmHe0q;)}zuzkK<7{spBz824M4Gjzk4M5qiAOd>CQHRU0B~8t< zwM;OAn8Mn!^`CXAuQ_y~dC{DEGcMs%){Ea~o0(UP&U84-2YBQC+Un%9-)Si9e9IG$ zsq&pJ#y^gXHQr3*^@YeA;$V3W2?wlf&&G|ZSM(~8KQKdXd88E<@A34lHgck#+d3YT99NUdD^pah=URGQclB;?u{pTn9*Ztp~4hb(-CnjWDHZr&ivu&E8CR2&M3x|WX zmKsEnU818J9kLONw7HRcvE-Uv*QLHVJ(L#nU((r(s;89c{w}}z?$XLdTqIca8EI$YCjb+0G9mImj6`OtC{>L-el*Z%?ya$i^g diff --git a/B4A - Copy/Files/alerta_amarilla.png b/B4A - Copy/Files/alerta_amarilla.png deleted file mode 100644 index 4f4beaca41c7d207d360658ffbe169e9c867df08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62562 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

pV;E;n;yZJ7-TWMP_hFF&pI0jD9Xe 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 diff --git a/B4A - Copy/Files/amarillo.png b/B4A - Copy/Files/amarillo.png deleted file mode 100644 index 44e8c49161021a549ecbbf32d1746dc5cbc0dbfd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10753 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 diff --git a/B4A - Copy/Files/buscar.bal b/B4A - Copy/Files/buscar.bal deleted file mode 100644 index d40f58f91e5619ecb2b12fb333b5d8628b1f9f09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2356 zcmZ`)O>7%g5MI|m#3ewXls2U$4k^EBOj76%EhTkq=SMhpG22wCgxr_i=lGS)uC@E@ zG$5o_94k;;6^RyA;=loML*mMTODoYs`4MnKy@5a|NJyxW5MjP?)=olLX=dlm%$qm! z&Ai>XVHgt;!`Mvkt`*8yS~Znk*h1@cxH##HdR_WS(#=#{uPI$E?uWx@Lu=1nF(*jV zQoymG0zIwd{4hrfS1YbKEmTEG#zTqlvxzu#F`_sT!rnuK=NeJ(1?+}>@ZDRRHw|~^ z8%HXaUeDxi+#HR4vy}Mq?Wz8)zkDt)_w){od|&$PMD%=pF?sXqjkk8p-9GTixzo2N z2fpjxS*jg<|A+2~_2a9@zy9FTu6G72g@flWZ1cB7Yp>j?*?T5_&mIa=e}A0cfBnkB z?)R3?{(SxFpQWzLT}xlx-M)DGi%%CnoIARF>aSbBMt|yG`0XRgXo3jYT7kJxm%B*H z&4@r*>6{GItSkNWl++>w74>QI+X(3g$tGMiC$#e1T*K!#%C>zmFJ>IMZ-d~u6%;^)^j}nURrrR!g4Y&j+RWb zG*vN6$6*Yl<+(QdqFvHOo;F57Vql75PNIUae2(65oYyR0N*8A<*K!)RG?jMP^NeT; z012R6+6`#y!lzgy@Q7$JiwV)#@c;=~ErOKkiy3i7*n$gSTRW+y3KV69JetB+!qr2F z?#Qaf$Z4;Rc=O8EHJnzHYPP0PO-;B~&GR8PTOu3}zoF~^b362Z%?^irqf784ZCpPf zVK360a=6+~o}Ip}F(D1%)N2AQnDKmD`fTqkPof&QS!g3*FXYF}N_ld8!d!DvF?3ZC zXzGaPIQdrpP;p(@wsL1t=rBfTebSif*2VwtN8#xW{KK;7UQ|WH(c!v>d^=^XGx8ug zj;aUhO&*D2shEed{Y65_RnOI#c^P=EVZ##ssJfPM=n~G+_@K~izG&vlm5EY$@>Hp4 zW(xO_lJ1+NscXmq8$HY!3(lM;4STfn}f<93IGGsXUb_@LiT?H3qBbrKWL9 zkeenQw*v-T_NuTX0_XB$nG*#Qft&5Tc!XPdP3OzzWHwW1eH71)93$aQYhfhu##b^K zekLOqNrkldTbjh^vK=SkWZsB;63bmZ`*3IyVByjwmg%9l5d#462s)TVBAD2?0jT1U zhoD64tq@>+7{WGUkAwndG`WKqx|mr0B_4T{cof$oViVgP3Xg?CZz!Z75E*@; zfJN+aV$psuER%bPacxhK&?y;riPcY$fSHS+sAq^05T1pG$QU5v8hc@*XEg|e zv`!PnjTCX-&AIL+kpV#lTo^(yGT8DQQ8&W_oZ9ek;lQYmh=aA@VH^;$gA+NlaDu@0 zYh>rM{~;koT6(RDgaszhhz${I;WSJV1A;$A2dC#l^$R56iR~wrJV0z!{}0mg5cKHq zi$pX?7c+;UIYKNIi-IDqkhz<7L1!b?QFoq<8XwZI%DP26~y`3QWE5o@EBfo7Cg zmWcbs_?dKS4yHV@F$m+t`iMB4RfuBNI*6hj9H5IJVMGzBoqZ|{(2hik6-3uchVd_O C^U}%y diff --git a/B4A - Copy/Files/carrito.png b/B4A - Copy/Files/carrito.png deleted file mode 100644 index 03889f677a4efd00995fc8da3043861424aa6a35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22596 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 rQ=wwFYt;Z?#pe;04E)UFtpEc6O|sQN2{9B zQ)>yQV`C%~)v65P_sU*LX-}?#-x6i%EjST??PUb;B^o~ib_+@Cf_;bndmbYe)~?JH z>gH_sY~jn#nPc@A^^aYJxx4oJu0l`o)o`Zo(#u<}@hJ76ZSR5P%;(~oi`{i=uIq9~ z`oiD`>z#GA!%o+`JEn`7{u9qLy_rv)wmnyP-S>T&5q!HoeS@wzO_CyUqS91V?j)2e zi%2=?oQ%|%FT?bp)FQ4FNov}+RQc=3Cww(7vC;f7*Tls$QPiQu^fUwR<$ zf-ttW(9U#x>~9x%bg8Mky?s=9-RM1>i817V+I?fjVN6i2tw*&6gyVZ zp>hzqGURd=%@L#vwj4fC6t0?xm}JjW)kxiEy6ho4kMyOFj=G>A9(jZs4Sb!Qlu^)V z2~3;>g_W#F^E6H*V^9Y2b}3)Hd10tnxHe>$vKFeN(UC-_S8xJ9!Yx(dy2>BJ@reGO zw3IJFS)`{tZks(+9L!ogmhzs4i@S`xH7#(BND@OkDjbQZx%~O;uvJ3TS~ICNWGy6h zHD4?h2C`P;g+4rcj(|&Ud?pt0WX<@^CZ5m|F2;gkqT%evO}IHVPapk_RwQNORxp(` zz;!Z#x;fTr0CQKRjRca3O{7~klS&{xJQ@aDV}NnumF)l| z#*P@kXvJ%9*#!mD+)av8-$P)rqP_7lD%wYqLOJ_MIAo*7r_bgOULdvl(4?yuu0B%z0H;VbS!&SSj%$ARw3cA;M zxw>dBELcUbhGx>Ub2p@|Q`kJTSS}axmB!Vmu`4KMD4j@;C9aub7tq%vhmsMHGwJ>2 zY)V{>nR8(50(tD+6Y)^VB zx(RH(vBLa9VKJZ4=5=;#&YHbpsBpM4PtMM%q8xS~a)_8i#D&00`$%xfG9?lNtcgdb zQj;fxNTg%a(J{QF6QZ(2CR?7e4wpTnIaORhB0Z4+YZu4^R;kRY;YG8UF^jC)lboC) z7|D6_fVD4c9qRj8y!EQricl&~)o~K)rEiPYeVg{SLwg(4-gZ)EE^U^xRz73Bf}@U@ zGghuLB9|=h?4;QGIsKe%5L9a}ZRN{FtItFCb6F!m%4RJW%4SZQ&2-Gni#&9%hrZZD zZ}HH59=hK{4|wRU9(tRH-tM7yc<4b7z0*Tq;-O#fp)d8&mwD*RJ@geGdY6Zedgvh! z9rMt%S4VFN553z%4}0i6pdCz;psz%^3T4DYk9z1a(2o2RXs7SEho+Cvb~D(NZm@EN zzTSoW0UBzyY|YQe1~-#iv{?IL)Sh)KorErR(R-gb>4d(uiN)8aZ+l}j{^(;vUEg_W z^;h3Ey79E<9<*+M^;s8O@%_|ir&ryy@M7e#yB>YZtLC5D{=kjbJ(axRduv~ln!D_d zAFK_}KD~GR+aJ2^b?>++J+kAbTVGi`b=BNe&&*}c-t$6iuw?wteTi*%fAGlq_q}xZ zM|a=#AE`CBuX*X4KRx5c>%R2K7e6w8+0ko%^2GD2ez@_-kMF^ZUO=H^&z7c+ELe1f z_>5V~&i2NwQuaXJD)x?AWz*Tw84}9ilRe9+tVAEWs+rHuV>2k^&=5Ebx0lM(VJRbFpH1{LX4 znfckdLQ!PcBpENcA)6^N*l%G3tVV=z+nEsKv7W5aE2{Y&%z7uGS}T_=m05%7GPJrN zO6y3am8zx*WwIsFx+8LTug8+Ii0v9Gq*5ja?hy1=(MqFp=gy#R>r9k zgmbylG8fIkDdvGGtv!aMGBJ_f zlbT3gn?im$!iWI-w}4SDIa|n=sQCpmlgZ`}2x(7+l1iw`StHrJ#j#7}BX&|VmYNui zj)jK|)P&SiWZt=tT7tzBk8adOj2Ou)z6A9xYV;{YkUEK7jk19>Zjo3(%n6Odu z9a&O8onkCCIy8}B*zS{@NLmKCgm`iy5sM{LW7611W@(hkCnl$&@szZP7-^C0E|wZe zjU}VfN+ zBRab{znC*Krtl29JbiS#)Xeo3&SM25R+zDhJUAJN{T7dCHvdlQnyDWF8%r5-I-;ch zEet4?+;9w8w^VvF^FFER7o_dHyW8ERZ@e z3OOcmh|xkOyFWW?PeU}}Ira>tM&iTJ`uQ`S!pegRR=gm zqb29Pb8GZ+qG0b(wv5xU^UBoNjn#S^wX#2(lhd7+?hx?g= zB(8Z6OPqw2vkpo=KrHM7Q|%m1Ti-TzRkslJQYPoJU=x`AT`|xAgvRVfvuLRmT*~e6J zJY~GWs9c5^3em(Q!MDSn1e+LcOOo-ZIQ&+zjLHF5gGK^jOLo z#hX6H8BIDBRMT#E&sPKY57Mn978&uxh_kuKT6x8zjl7dmlt1=uA(wvtBPJ|6h0J`X z)?Lp0_UWACSMGbLP4AVM=%ar-x3^H}#w&J#c*cGSMffj=h!7Iu6#f9JI1N^WBGkLI zQ$7W+KFVqok-*ukK8ioCLuwesBh(!Kx|j@hhq(boXlm3 zAAF6RgNH1VUgxg;T&Max5a*-V+?$2ZuZPN zf-VXs=yMx3)DZ+Zp{`y$A{XP~!EOs)`&dtOctL=r-x%fXK!n!UJ45Ax{dQ45CzxTcfa10_tkY9%!g7)E=?5ZHsk+ll}MwuC?z1o%VXVQ|(!fTIfn zY&TFEB9H`A#}K#@gSQm{3Tz1h26BH0)bW8L1n54%P`8{9T!r?IAuxi$+ll}MwuHbg z2xtj`Cm}#b;7rskhrlS>JBGj*25&0@6xb314C5^!@EHgQhCm8EI)=bF25&0@6xb31 za}eMU0R|U$A2tu-#xyBOllcCL4isKuIpNA~NV(L!qD<^aK=CZ7%^b z=%>+L&)g_bx0m`E^dxvCgQl0ZCxiZPND{00&v3^1_KJ6;e4`p@4o={4Bl1* zC@=s5*MeO~!2cPh4g%^7;~RmW?<4}h&~5}MFaQE?T!MiA47v^iDuecoz?(XWK)T%s zP+$NAt^>R71G`XjIZDu*6m+qpkjkKaBVeLy$D+^-25)N=qQC$M%z|AKFpNjH*W9-Tv>g(7S3UroaFQ><7D!fd33yN1*6r(EFjxU_0>vOrm25aJ|(C zw3G``U;qTNOAxppH7!Mh8h;4f2~PJ!Mgym+!!ZW|wi~QzgupL?sbdH* zd2TBL6c_-364-SFo<&VF2%wvdfbxL{QDdMqM4${N8-bN|m(|3l!HZB;wY>zm%VMzUWr!I z#0}_SsHz34=|*?mYA7(U)f_>m_E-%BRauS7IU8Bco6)sn(f%zMyc&l9SwD|WIt~=5 z<1mPty5HiU1KS9I5Vw0P2!GN3ad5i(E%hw|o(Cc4F5llF;E)|d;B6SZtq4$HO9*@b z0$M^~jT1S2Bk=Z4BJfMCA;8^0_W=qFfWVDlw|&6*6u`d^=ywkgROJII3eh!|+q-T; zd&hi$vuwc!c-NyNK!E`eSQ>@=-#yfcLhA0pw-3CdlL-8ByAhzkmJs+O2xuk>UAemA z18?uD>;px3r~zpWv;KF2$@YPjmGw7~zcEX$_Soy}``WE&Qjx~MOO5Yu$oK2B382wgxoN&Q=4PWzXy&r z@5LnSSQ7&UqdT78H-8_7tHzjfFaQFCqFDs)L0>m={yyF$aw-JWEgP$QPykKMTejO# zZ6mOiF#(2m`eZ_uD(b zbd3BKl578mQg@=Ej{0|_sRsqq_blKvyvTn*w4P1OKy`PeKwbUI2FzavdqwdTy-{Q{ z=`qhz;;!g#2TV@IKneHbp;oeiH7N3D=Ybyry%OEEi9^+0P*t_P1W0tAMt9v_C{VW- zAMW~Lbh53+IaK*^SNG852KoCPtD%j^HhUO^fzr@jKLVzeXf;g)`QL!5TCkd>L7oBw zTg~0*6x?cRC1>g=J_z$shb{y18(Pgr!Su4#_&SRJCR9~zH7%tE6d2fQ?m?%@4%Onv zwh(0RQ0hNH;2p4m($H!?1}58T?gb@>s*i)<9hF^upHuw_5ci`*ehZHWP{N1s;Gg%u zZU1e&_n?H?V35e*A$vRJu6Jrq2N5B&uC_B+y$%oAaM@Mus;|XMcP*bmebxTVHbWCI{5YX=SlF&MZ~8-w8v-o(S#UT@UJ?28eLzu z8eft2Gf-8v)wGn=QJ`O|VH^>w`CSmft;XGd-K=gs;+j~E`f_I)vJI4mk@ok%v=XhR ziLCCkP*t_nw6s4{U|_5H96ANJnq_w=^&=a;_vg>AP^)QThvGG6wbir~YbY?V)$nq! zJyxS)O&&o<&H}z;%^xVMc?gtbbzcDCW_6pL>Jve%L0Nqij|d9JvVWOe|1l%hcKsn9 z?BM-D9DY>YgChM55|85{2_J`C&l=`&lJJpP*Jz`J&t5o1xTm8dcB z5`Gtm9ug>S>d2SsUpl%Mb)p!irLJO@rn_H6d);*RkI|^cGw>oQr=ISj)?PiC-PKbU zcE+RYfb1JkWC?YX-cfLf4w%P?4rr|gO2edg2uv++M2&2Q8eNOxelU8W8rGNbwe3fq znusJ{!c?mx$vyQx;OG600KN%?nEN3R`dt(S)lhw%eu==7ib>&fU9mQg^|{AsPP zprKmpmH55%#+WrK zmi#R=Ed{3zEdDK-Vs!+Twd6kqdz&qp1|H0k3D|Mc z`coL{7-*eh18Du*U~iAsnLafcKT_y=oV5NO40Q~&PO$;B{#~%QS?j@VeXr7b43tFe zIEXrXGt}q^>_Uyd zeKP}2ci%i4Z({d6GDx&xus2W|-my%B$+r6rAn<(*UI&4#XzJktQ0$d(ZL;IiLe`^5 zlb*RyU;qSu0QUAEpmtei34*|bAPkg-2!N-OIX(@_#^NDR;th;wb-baT6F5Jp%l`ax z&Y-(?d6J<&M?(*a=+Gd+iHmwUq^OrRMx{r{>}vH?yeUH#t0UtE6cHxpFIxo^=^E+f z|6BRY=2}#Xir$J22Kzk^qK5>ED~T`1<_!85kgUct@KWO=7iL|udNRAKr!Mr>lTlxN ztqU#YETXKNLCES)!DG)!%Wz!cC$kD^OG`|t)yu+=_U{3RNyJ+pG3xHL^Z56rq} zQYX4+QlPHILDbYe$*n`9?U|>JJ}i2p$jecJp5&C`)wc?i;+ftnGf)tsa>+^V9MqkF z64``@>yPI;)zrZGC^k%+ooe3v$fo574~kuj^8fPu|5uo}*vnsopr*0(mTnR$P`8&I zsL_7p`4&`&EArScC(*wFVOx!Jc2eI(`5~Hiq4@lf=R8=&>=>iOUGG7SffC+`$8uKV zoo81r!z07b@#Y>FF3{AKMuk*_xqgcPk^`|CGtf)9zd!2b%?)1gBs5u z7t;%|SIS+_8ZJ}zW-{vvQyLQQCF2J6K#~9PUd^vVsMS9Xu3)QokB#@D?+GZ8mRA4w zkl=guWNzc?yP&0DtKW+WtU?Jz9>zmf|78#^_M4q*?u2VlYJF(p%j5n5osWUXQLL^) zPn2Km@dUU&pi`L9QMS zXfAb*X=HY_+Uzk+eN?yxE0b`bJ}P9Bn#~4`hIjk#*c{WIgK#yTftTgB0y4X+r!Jb= z3U;8M>>P(d$m&^Rpt#30BCf9<6;1umJ&vN^8kDA^;ysly$5^QtSG$hB6sX${fjn+U-+2rsA@Fe!5&{b#43zLjJR~63@x-gpZrec&lvqt1 zM4g?{w|PK>{M9^){R^6^eY+9@n>+eapsxO9L*O%DZ_m+Jx$8*~sqa0+V>!j6xssgd HR5H}5^_+ANk;KGDG$A3xCvFEgy0YTW&OT0JNtmG1vPP#d*|G9 z&%O7Y?|k>%Hf|V3;S9r=h3|Q2GttudK#%KS+c}U^(O`pTmdna(fo^1It2dW(E60Ms zbt*Hh(1eOOrNM!&v}};EbdXbz1QjzL5UF@*&!|~c>$RHbn1@lSI;@x{>P;H#m-4`@ zIil>2v$#^k$|`ywV+wXb+a~wPYCn*Z#II;n=U1enkNm~Lj{$s)8E6ciJM!c+(P+nw z>DTN!c@AXyM3By|lX)(qJQt1o@v8$hIwClZ*kdYHc8atr+on^{=8)|cUFvv>Z`z|~ z>Y;LR9|jAa3!Q8+7C(P*){f3|p8oBZfzPkmx6*oV?!4}8zrT27`{u)!eL48USMLtI z_3GZ$`n}f2<`)huIIz3@$G3N+$M($G{K1EB?%F=@_aF9b8oYIT#tjC(EzRG*_1Qa~ zd}Y&9x6Hmsbv*Nlv3uribN9^q{pYQx??%j2Cy#2}d54Rm(@lorM&O`9pLL+#2 zKew%{E`!uPV){Ct>Q=rkI?79}Re>2%j&KLClXOMOO1cQ6>F7~2(5}-x=E;|kSe`jy zj@W8plg+y;bEz)ZcD-nH5iC>Dvc@SUb;R{7<;jZLaD%pj5~+~qPRw`S_27TMY3VVa zcCM$D6Np=+M>ex6H`L#=dQFbRQ4U?Sm{m0nvtDyl(fKGyt|*Mz_CVfK%Hj6f$=hR= z%IUxs%ZJQylNb^s2djx{+4Qg%1R+;o7U^KX72Hn*34yRhuw**$2o>bj^}lz1U5!d3%#pQGQY@ zbuem{qv3p**3#8D#}IJaRr8BQpNpQ!(ndh49xdfW*|aR}6h-uu?<n4PgmC#(X^dVXNn0?Pd;v>J}BQ3R49t)zYnaga<(ebkB`x7W6Ts480luq4r3A$!^4PVid zU)bxK*hdLW4WQO28!sF+xY?J&xOPosmYj|38L*{&DMOKt;8iM9y{a5uhe*W`_!j_y z?>e;C(nUA9uAc$j%t{fy$Q&BR<10EL90>>jzg)u>T@z+AY;xPu1V07eST%Oo?jDOk4spm(t7f`qm9jm_xtShpR z*R6H(*dLS3Pdr8-XOKTJ3mwaw2v@u@8m@Rh%tjFuFn5Q7^b2?k3b)G%nsKg(E* z`JajiNYL~|AS%n`kRb+bl{>I1aVNUE>Twr_cT>;$umTNdyq@l) zCXFtMR>P947bej^VG<)GfP`jXs8{M?ZpsO-$6*W9|HCpSW_0q3GB64yK zr+U!cL*ZU@ZD`_19Sce9CM>)Urjh~9O9rO9ty!!HGq4ttWS|#99ZY=~o(R*kX`U1} zI?*TAp-ZBPkJUr_ImHkM(4@}hs2M~jIPw(1(Sgv2BTsC^aXmC~L(q&(izX_Dpoul7 zh~^`(+`uF1UIDr#+njy{+=!(iruRb4X2trLGL587e zBuH4jgdkI0HxrA(>lP7&8&7xLY6Y!!-F9J}P~#8eR<7GIXsXOlVj!rrMFPH+qCWyD xO!og!@bWnP#60|~g2xRT^YFJBNWuKSDR_&3uVkQF@L1 diff --git a/B4A - Copy/Files/detalle_promo.bal b/B4A - Copy/Files/detalle_promo.bal deleted file mode 100644 index c8d6b017ea7fcd8c8b0dcd1f62373b4be11834e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2682 zcmbVM&2Jk;6kn4#V46}sS_q$Y_y}q1nmFaNP#QOOT7&D9jY%X9Z71Gwys+7|cE=9s zsS+1dK&n&;apletBsjnUPK|Pd6DRl&%8gt2{oZEnnmVFlr8oO~@6Eh<^LuY5ZCTc- zlx5wI|31ilkYdBQUDs?r2%Jxpl~A?YIvj(os#djE*iWy(T~|7BWeD8JEW3K6AVCss zcP2MUOvHBitX*Cz+7AHd&vc9l{M)vR4Wsb!L$31OgK-2xJ9lPc_d*zt3GhJtE<+A~ zMl0to*&Ew8-Q|p?iNGRZnX2o~gZ8c$|^sJe<| zk}MyqNpD+)hy@^pH)@Ru8m?eG0dfpx&~+mhDR9%S3SH%!8HVz7)39qy(B|R|9+RP4 z+FffIE^H~k(F#I|5kpQq`H|~HY`vMis+;uluznx75G-+1MFwXNJg*!x#qHY4aa@0m zyA&SBFsz5i2#WHvo1Q*F^cU#v=(>yOPNaFx*go~N^p&Uz|)Aq>_7 zQexnig0V`x5lz+5WTI4FD865MgNy{W}TIxDX)nbj(se?3fw?hQFL+9`nlO9GPnZxUX_2JDEm)ypgkHT4q) zA%q#o!SIin;gTbeaiNDi_2`jk83;mOE*5B+#n4MP3nfKD zg*>Ju(|yohxY;Cld}kp3)0@}4As O^ov0y?%F|QS^oe6S-xEW diff --git a/B4A - Copy/Files/durakelo.png b/B4A - Copy/Files/durakelo.png deleted file mode 100644 index e1c956c4a8f40776c8f62ee4196a2cc5ac587ead..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7098 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 diff --git a/B4A - Copy/Files/engrane.jpg b/B4A - Copy/Files/engrane.jpg deleted file mode 100644 index 01159dede406910442ea8745a6f5be1db3cf3848..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4132 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�?|!Pq;vCdy!w0~pyPw>) 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 P_+kf}-T!sZih1VWLrhso diff --git a/B4A - Copy/Files/espera.gif b/B4A - Copy/Files/espera.gif deleted file mode 100644 index 605679f63b863c7519b09a2dcafaf734f7e67ebf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 247213 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
S*S<8+Q zv20f}K-@=XM);!lN*~t3B$!JlZk@go-FM?aV4BEvPq`h+tHmIaF4WcI$Xv$ABVIwR z(Og%3Xctn%+PDi(CH&}0ce1nYA}%K^g;Is>e17*p{Kk7aTws>~Qrix; z2`fp4DUor-`_7L$3oV8Agh6|$qW~*IK-Dz~>DtXuAu1K;DxUIaVbJ+B5pjPw4`dL8RBPWArjQTkeJZq_`^>vTi^0&FCgk}gY<$&79fhI&*j))pY zh_vVZv2K-W@YIQ!H4HRI^gmTnJK&_Qg>IQS!TgUBDHfa9ls zU@xbB_30l5jiPFOSwfP4{&*(N_m>%Q{PYk=qKnq2+o`h#vDfh%|9z}Sad<5ZIvXAv zx1Owt0dW#B%R5FqkFHn&HJ((+rvNBFCpk;NM6f9}2B_x6fv4J^#Zv1MXve%#)XF=LwaX~&Z0f#;ya|MEzSURfc|xImm2z~c;_|S&{p=Z2{MKgf)WkXy9k`PJoy;ah za(n>Et$^wmoPx%xk;pC`X5k{P`pO}jo|PLCkTS$$q+TbLjDqdSj9v+V^%|>>gbO1o z&M}Q0E0d!FrA{(nT7ahs#rO<&dVnQV16-R-L?KwCZ+ss0*61A%EZ-QC)3;~xkG~-d z9PGY4?5JdWac(LKvrm6B`mXz8K@O}UKX}k%g~!ikPC|Wq9P^6g1YnVCJ|NrmM%ps$FB@}gmu8R*jamF&Bo1BmSMjx=0!D-xpmf+>63JHnYfC#6<&Nqe-3Fx?NA8I zZ!6W0DLL3+C}7#0xz+3w_Xwrkc6&es=|eAbzo58TOBUkABa|G)63llwhNzvFR1g}w z>!#f9sHdx+lf?#w9gvqWTMj&psSC)FezjA3V!d@uoJpHHXv-$pEGEkj0tUq7=p|b(7qd@b< zgN#p|s~ZU1u#;*xvOn(&#IfCES#(IQ+ZF7cpu9|zTYkY)#HJq}Tc)^!ZQix&5uOLx z7SiEe=B9CF;x75$)NcLCk8t(_U=)Vl#34d|X`{KM#YRiTXZ*r&gHl;)G@w=&^Ykum zzV&BK4o|_evn_|r?(B{`zk3NxZto@2NWcwRMce%d`;w;-afZlkhA6pV;a~YM-z%k8 z1f8@(oxZomd8*BDn<7P3zD7C9UjedaWPZ&XQkEs1l6dWne|FrB3%B^p^^zN3a@Cdc z3I`#io$OIAiSyXi4b#Ek-x7Wh(0ztas-Vl^MSeYkQprB5@WflNN!Or$UKA+rL4I<~ zbt(QxQ6K+6a)FA;8y*kwC#G5X*(etu#~ROkSRj{j{MOKN!{*Mx1^OQnYU|g%kKF(f zYw_CkHVV&%+FCR`_Vtyz9b-ToI(Y1>d>43_&utR6bEh#;lKMJb&7**y@1?xvU^CnZ z9|<4{oR_TcHRp>jf=#et9Sx_nFMX>L)S&(lcqpC}myyso?UC$8_UzJL1@Y(=N2==y zu6h4K&V=$O|44QrKWOGDz}fUMMa2FNtKdeHQXN7C9spEpbXT`Kb(5tlZ8M~@_&3C5 zf-xdt#>Da;p}W`56g1d-z0n>DcQkRd8)v%P$WwrU!gh{vVPNGG(MXjHNgivP&CwB zIP4ROlYMjeeuB$U9pTq!Uv^&&e-Vj9}5sVuUAyx}AKo2el0 ztkg(#pDsyntBucmlfF`$Y}9=;mI08N_sS|%n3eK|BTrq~PWe0orUoJ})TiBICu3VP zL%zy&k>n9wr^fL5G9WoQ4Y`B&sHNv3H~nRuXWWZhVZa+0a~~^+aEwcx6^mQObuFVM zpJ`<;om3|60!&%$=Oa+DvOb(>9O0HihFal4?v*aQ54Q%=Cu!VEN~AvPCR?i5JTK2n z@^ksQ-_w#;0C*6=+SMDcB!965FL8|`QE&qx_1ytFdeKiqcn6kWpD*^f-~tt$^GH$Q6FkuFKuu=GKKUPyw z^zwARP7v?Koj5(kjFRc16;66hq}ZrH#K59Bh?@nPgDvBbz;~aQo=l6?4 zqvBjerJaXLvY|$&f{^B@3?J7hhGQvhT=2N4Fva^!$WMgQ5E}PTSd$_+LMnTZk2(}y z=7&N{OO++I$q3gX>3WLj?w~XaYs}9sfpZpmR(NFUVtK4H|9e1j#2)`nS6QiO6z4|H za23Bmm*DI^-%{i<4AsFIP3AdEky*}E zA}@}Dt^fM{XBdnj%&QKeIRi$pOX-v#Matt|22z@rItAoH$-DChFK_r~3lh}z-xkq& z8oNP+^ImVq3mYCt5SSHJ7PF2J6nUwC`C$Yv5`_xp6}MDi!U>RgCI8GcR(7pPLn+2v zW^?9>Shomj)vol-5~(W6a@vAys-^WVe5cqnAP6gsUBcKjCn;4s2j#~;oE(n&<&q-mn_=~X>2LP(4U>zOMP>}A zeG$HCzTf|F(B=7JGby~M@y_o($NE$EnQ!#JfZEjpH@55U9q{8)&1*EKGOwpm4JW#o zFo37JMC`95J0@Ivv}_9hL)B)1k-aLw*O(8TH%wG>*Fht^vYg|trothz z$}x9!d!~hKhsiv)@?}5Asx`4@k~rm6guqVe+gl+GH#9eOa;AE4YNG<^63 zv>4FpV0q41!}y5g3_a9J4>&SquMJ2MbWt6Ou_+o#Dw#2p*+AR}@X?Kzla``ImMmB8 zzFTAXE=5yK=E9g zqwEiHDj(rLK_#=jZW2_~N?e}>+XQsEl6m($wp=eXCJdvH-A>Vwg5Q_la&t`3Y;BLY zTPR{+*Z{sz87gwH{UQCn;CtgB`UqK#ppnA92KKZm{s2_g3rKNOy;IRRF@tM&l{~?%Hf~fzKEeBoWU=_B!Qi z+05d{UzD|`U;YcBFoYvUd73JDOg*Nq@#GvA@5K!<|;c;!A4q>NU`aU?0G ztSH+?VYGvxFfA@I#Na|R=%Rn7arXT!qmE?F1y;7bfN5-ArQ#FuX=9Gv6o-OgyQsh3oDbxE9pmba|`}p0tEu}XLTpr zA$Qm=JaImdf8M77Z7(uWr{zF$rOy>a2TH<+^_mixx22Vjs%px-^nPmWcCqO?@Zj$l2OcdS?hT?} z(Cb;*;%9;&c^Rm!tjb^iblI%QYsMDK6??Cy?o6hAu|>Pi2z-WQNMJ{~*W8i2J|#Ej zlg>n1;T?iQ>TVsCBRDp0uDI-;@MVkzpTee zh`xcJjEMT)ylp7DI7B;l^xEV(9IFSAB1u-yWT^_|TbE#HEC%ivm(q-m}(st4U69f5A z2*%M(qVC9BbmJrLYeQ*v;D@>xZDTAa@nAAdJZg-k&hk(rEQja90^eFX4JcZ)3g9Bu zB&0D?V8$$-kw*`CEtl0uUSs0UMZ`` z{x4VPV#N9K2Kk5O7T4oo7uF7P2E#$V>42GiDRZAQA!~A<6_npM16TKv$EkT!PNo-J z5>G{>hg0O1X|(oQpb3HSu~o+6tCJjo=w~jt_g?rgTAH{PkQFA4$d^6>%GzdojMN6A zhEGUS2~lhKgAJjr)1us(8j7)m)g64c9O%0lzt18U9DTfhn;g zS)X@~@n;kqa*=$HAF#YCz9J=2-jyHfSU4*sKIOb%dQu(;qM|3!hz-AO@hrG{R(&`f4As_dacR`gG#R7#mLhLj+RiU*b@ z|MX*oGZ;L)q4p_hL6wL|MoOk0zu{uJDNjYg=5eRhqS-njkMIh6Zw!r6@%$~Od!vFF zE~qzMZUn?M2MKfhS0;)^wg5raV&z*h3cDKJP^X1w#9tQ`JwPJW+bXPqR({_u-PSlG z-^Kqu5b@1Uz&@>Nw25y50I@(Gu9ZH_Q>XiSyJTjwvaO3Z4+j4$6aH%k4*puLci+Fv zj^`eor_%1yga4EN@B}yj<^Zh!V_e~69N=(7E+?3k@&DRbIgs~%E+t`MTr*CX1A43x?_cF9h*V?XD%D!K`jbJE4NtF3fv$8G9HhZCOQ|eypcr=3&Q5 z?P@SLhG`YM0Kr_jIE6D?OyKs3E_la!l8lxYBVCYG<+S{;w?$A)UP~okuQ#w8`oe2& zV;anIY_Se+^@}HzbM6Cj2m>qi8Bc1wMjWDMM#j=Q%w{9pwmGLsc$0(MQWZy@!%zgH z#wP%mwUOg};?l(%-H_~s5tfvX>r8_Qq(A?#)V?~HRUo@^Kgcs|$yFJ(v0;N8RaF3#5b? zhzPA&>vjCjjhCzH?VhS9Ljcd`p3Yv22`vrWtAN_#?UO_vV`5CwZ;^Hwpsx+`wJopc zov85P3ty6=fXH3Sd-o%x{{|P_xFa8wWKCH~zhc7xLwSI(6r%503aYp#sMEJ}^vAR6jpee-PD-CNjS-~VX=l%7Gaqja0E$0S zb?@-Igd!waR*v1V*Lk**le--N_TW@BgYzD~GLtJ9Gv69=9bn#NgCP68|K#nC2aZ7T z0t9Ba^{WN2!N2}LA3#4l$O{iQIX)wH20nV2?>)Ba6_!gPc$~XOQxA#?_OAif(x|qQ~?8dXYfk^-xQrI_G#_8 zw{=#1X{g5z5zMzwq{3Gc;NuUZu<{Eba!B4WrmfuVnd%R{D+v;r^ zz)bkW^OtzrGeqnaZFLN(m%cfZb^YI_BoDgqdgQDiCR~uD%M8k}0)??&!Ge{Z!9tU@ zYGqT^6CO`-TYUCE+OqsEZ8&p^*N8o6!I@_|-#o-B-O%QxKd~g)xm`t00eHQ(u*!bk zcfV?vs2*pb!K9&QRShk;vz@?bwEGvFiwRkAzNvx{5lD<3{!H8tOA|~jAb-GLX^<*<_n@_hm9kUemrF#* z`06*Qm!_J-wU zA7`s`$`W?gsKuJIS>UfCrWLI_A!W-6K4IIA6pU9>?ymq^=ff$^sW3<`f@06J%1oe+ zmM9!VGa~u)pHTwYm%R%<9P`gCmmoc>hT;Q#a<*r=avUr8wm#swNRM*~ePHKkrrtXx z&iMJvEFo!=w`0ljE-#@}B=@6L?9Iv?uH7cxJ|+90^OL{q=DM2PH-Z;_IY6{jH5}QB z0ZrpL8H4$9alc%_WW^KSZeMDp_LR@OO?RcpSoU``oi=d=Lz@20HD3wZuu6GUiJ!lI zHV4{yOww}c*~&@>tf{EhU{1O2Szn*J0IjzGFu` z_qa0eNJSrxT5)&(S)X$k2K{pW0h}({Wd`4v{NOIjeEH^VY-yJNRlBjCmN!`ZAdBbI zL71=@_RakFbf%jcHTG6z#r*fg_UOQngC)VG`R^g^h%Mvau2ajldtjOMOdhGBl$d($v%{s)#>!{fuAsrP-k;*ej-{A-;lQFK)LFTH(TRFD+6hATTY>%w{Gu5D<0lRCe z;CLK<(o5o}I=V(Fyu#pFx&DI@J*e85v(~c(noc7M#}$oNt!EjPvGI4=Md zbp$iTj9ZTbe0%n%TcFJ?H+WyP4M*mFo4ac0|LBc%tRCTAPH3)s%4R+PuW815W25T< zcw>n`ESP9~PrQIAP{ky)!v{8;PyVrdo~$*0{kFfFyLkO^qn56fVof1MRUZ4&nc@}$ z*rvfxF*{Jvs|)Ky8;N*x%gW)x){ce%8xxwBM8sT{>sv|3jU2 zIWxrHe?&GxZ33vQSu^bLV5s_LeE~}6EDT}yG~Skt=C3OMi`3|}I2Os^nmNk?*-Zx9 zJaUtbkjH-zXrsv^1^Rb2y$M7uBBshtP_LKhy+-7T1}?0|o+y;vo=Qy81n^1A@%JYG z2^T_}YhY6}a4B)IUo}e9MYYu>Ln0JEnj5n*l3pb`-&f@>*9m`TqQ9pc9LkK9w+#bv z&jDoVU?o!Ay%{i0D}bB=crmPcb4YciClX8sk~C7mR4C0WRdOmhfU2S~uKF5%Qso&emSLTI+Pt=jF;g}bT=Kx9%_lR3Tdk%`XxLa& z&Nzdf;b7^IS-$~2_7(Wn86cdmZ`vSkZVU-DcT`7bU1MpId>DmnlBcoeZ)TVy08AS= zCi0bakA#w_KUd+U-D7J;9_aP(ZO*3XY+?R z?^LmI9xc-sSR1&mx|qi+;WCWFg2hLF^@_d%LWo_IKmGA3-dYcOL~^BaF4FtBEQdKj!B8F00j#79ks&+Ge%O# zQkWa>d9*cnPhre%h8(yQ`oA5l{|TZh!T+VFC7UG= z33FzLqRZF*7dy`4)Eqd|!|ne_ongXIUSQ@6*g8A^aBwRHQ`r)|fcYV8Uz5b9nkg)TLI@AB7^Chc; zx2yD_IYp=5xDz0Z26!CZd3NxX(}#M~?|)Of6sco}bRI6!)s- zbnmzyzYj`O@UNqKfH9|%%|coj!2q2=7M;*BCG5vlpMmFBtG!>FA_fA~rPd;1PnrJ= zdd>+#FF%vYSW60HYMIQP@D6wPJ2Ap5uGO`cwH9qhjVF_xUnVU8hh9TjpB7dQRB8%V;)Rji)xeqNZdR5xobuqpidUw;ggoq5@$b!NaD5;*BH=pE4gfdJTqa%i4 zp!i_BESPL@7*(CX+6HRer}?ZmcCA=s!Lq(18}%V~(ja`e)&ZV++wT>&M;v#vrl_Ar zo92QtCM`ck#(TCu=F3KVn_PN`E=JPGRV&qU*Gsn-^dCu#cc8S3y`J}VuUJruWIF&O zMK^=9A?Poo((j?ep2OvEvh~nrv5YM+6<#>}+oGwV*x`%X!kU-HflicE1y7AQa!X;j z!Mi&w4|wE{KpW};{X@GvAoAkw=& z@vS&N#;)f{DQ1c#O>i1PPy$BybAK%Wqks~qH6(bk#stx#;O zpkYHh{C%moxJl6y4PN6O+ghsC^cZ|f@$z{0^~RD=-o%Dy+)gdp#}MtQlM3|Xe)Zb& z#ZT-oc+jGza7T7|N`xPA_-k=09mm>MFjD~X|Foy06F-M)58&y}T|?8>KyGEeN6;|( z@NZ6*+O3|x7QC(~>}R2bZ~+QXuBXcC2Li}0OIX%6L$Rk3Ac-FqJPm>@XupS?jCzcv zZx4+I0$?dyFs#o;EnK87z-5CXA{5Dxkcl`@Hd}a`fZTt$GOv7U?@i^eRjl+L9y;`Tmi}?9u;le7Te}5g$?xh=xgKK6bv$zr z-O&np!^elcyLpN0t%kMsRI^bvNfzG`sl8l^Lt>MysJ?}j_@0uI9Lyln$?HA%%O~!Oju~_8u6c; zgo19CDB3w$;Jn)Ho7uBHe6^620|@B0U2wJPek9RGY+7bDZ5-tvPDBmJm|bp{^?mgK z#x;@6709ZQFqpGNYz(og*v@S%GKa!rNPS`1ezc}QvP3x^D%!)K>U^5ANCyh;UX@un zQP2G-zz13T{5Nv7Dcy~Z{4$&3e7zCa(5XD9pDjUHKCXnZJ98pCxCc_-QWNpFP56+N zGyD8#Mf@hn?nT$TdQeLem#+MH^u=m)#=B7sT{o>$@TA1oI7#egZwv0F=;0}e=M!lHb$GUn@Zfz9XfG4wS@LZdzJRI(&eDu z{K_onvDT9ApRE#YVtYI?@(A_WGrm2tcI`9!F9xe^Z!wd{`{h$)1?MKC@Xc1v4mM-@ zYok?8_0=(UR^|}Mlw3fA&t7Y@DXzKjmt6ghDlx7wXWH(C%Tp~&g(mD|U{Y|HrK3Vv z3gA(nWpBWo^l)g3=YiNMcV#X{fs9u}!t9g45n@fztIxavm1SZ4zivFazgen$3#u|yn_w=FZg(r%deZRksbv6O2~d) zqa@O#dB1%2ZO-XnpZhz4V^PG0tP^w6)w2pOn*8~_%;o^-erI1}|AF*-5pGALU@4`~ zw?_K1BIcb2E@Jcg+QR2|uRV5_7DzYV^nF~@jW7+np_+ezKM@L%B^|xtYIpjFpjgcJ z=l5&|xac4!FW^0{?SrxEa~D1s-{*M9i~weBpX)#VSgyPgiL<|-u>7$`zp!6_vtKm0 zIHP7`NBZu#RO0UV2y;mK!L4fzH9^C()p)@KC@ZKYRTMjH<_Bpi4+f@4~D> zM((1*0sqzM?3d-?54=T133+ce_)va%7zbj1YhEiQ=Tl&+5lH%;f-}5TkdROKvA_o? zxMp!JFUW`4r)i!cy5FIT-Px?{J>5D?GkOP6HGl zz zq!6!6k1}rKGwdmvol?LQOPb99zwZ~@7s)3K7dg3#Y3YF_!;0K0iZX}gT>=a5I)Hs$ zODB-LUs9CSwqczpDZdl`%^$IzI2}oG4G0hRj6))SECM=W!Wiy`%3@*)vD~p zSN`#}w3EGstRS8`q{hHZxi%eqlZv3IqseU%C7A^|r=}_WTL`~+{bRojCM-{)xom>keRVs{5uTD-CM%^JR)d1@ z+f&yxtu>8uZ&s1=L3$ge3mD_z@^J34NMY50<%RH9X;6YM)_rOfGAPR-&gaH8JTv(* z$Z@ep!KZjc4D+4lDhgMSV(QLQXYe_#$1S0R#B$S73)^PwqG%A0)5f#jOl%-YKU{Gk zTlAoXVn{hhIo=ls^n2;XnJ?()F6oOVbft17#D7y8zz;+D2^YX0tC$elYER})x;uQN z@x((L-6wyMTEwLe?E=l;y!zs$vc9LMngFxA$03;OPs;ZP``M}~38M|C=XLCtZ^rk2 zM;Kh6E4$yRHXiCY$iX@!ho^T`kZHKqCxXq#5qc!Cs^Z=*2`qIt$@)}qz`=reuu^9(g#e0 z7wlE02{WBTJkw~v^H%!Bmzg+_Mx!1hw3|Z;ShM^~-OSjse0^jtIY%~db(kBqoEAU> ztKb=2qFjq$6pgeK;9|AHx&PsMr8o=td9v#@Z^*w)NQO&@_olvW{!gG!mfLZ5RAMP0 zDE9)6G1_J_XE$sW6Z2s+DleJCZzvCVedHA!-U#;0QJLa_vdsY2S8gro0J_KIu7tE) zZdW{Wfdrt8=G&4OsVFhmlrz+ps=+PwwW#^prb1UGteSeruTScj4uDCm>0NFQe`UL_ zvvTk%q%8g2-56^94=ghWrX4kYEknCpvU2R9~S=*H*Jv3!>W zNgh>O0AbA5&O?xm{RnhC&xOuK6v_EI;mEE9-ruxe0ilUM5>aTig+p&Z1Y|+|Q<^U& z6$UUjr%ceylcq65nD|McBofs%1v??V!*A!Lcg0@4ImjoxZSYb#nZl=yjx~8 zKw~-XAi#vXCDShE6`i{;6?QXyjt;klT#eJW9bh+HRF}EC|JIg06=eh_8~$8(y0JV7 zBHn(fP2t$)M)+Ev(~VV66`s+-5GEm$b!CIc^!9s3e0_%8vpE4 zIm#AruP*fsB=(~S)`MpE8C3g1q9Iyk~l77zw1K|EcrSg^R zG4$?obCW)@zZ>*{NH;^E4Yyf>Zb2;2oL9-c>9;raGbiXA`75iI{qL18#Omrt(5%=+ zl&vBRr9~8XBn=G%!kAwF%(BzjZy^a&L+7;dj4y3NQdqAibW$DU4aS5gW{}-n4Im3m z$ODitd^i@A1|Mx91MQgSo54J3wQL#aOo|OBj$jxkfTa&G&z<+?8kFtv;s7>@C{}7jS>6U!{w*VDR!^ps?@DS;xI7f$OUsZ}GpJ>3y_C-1||`2~jNGu&UND^RmTvx`{J-r zUEyk|{|T%4Ze}wVYvMhC_5v4DtwI*ZZn{dyw` zDZ!O%$yl2C!Hz}$ zQ{N1Kctl)~j~v`?XH~1DwVXi>J@0h>>G`f$SYJALdEM=s`vPQ22jy*jaoD`#wNLZy z+DzCWxe{G2Qt7sFq>Btn(g$}c0Umx3!~4bFQULHsM-;jI zWtJfBoWF{e>jN)R&dKLtDPlTeuxH}=x@a)t4?hgtpn`_YeDTA`3@GnDI4Zw?Oa{0$ z1dw$mpDQm<`utdTfUwYeIoUYD=o0nE-S;0YS=YdC9d%shF5NbG(h;v7Cy~5Yf4RX< zAn5sH?oUnq?JG){!o)?eMcg^o+CpZ?G+)Eek@1(&vpRl5E3-*?F? ze_wk!fe8Q=FYOi7os4^guwK0TpchnLU7(44=x3~Zd<0O|4*WJ&bx{*+uOWaV(|=_M zt%4wvVTvDXQP4X0S36!59RN~iuxhb?@e)V8RZYAQu%RQ@xZPK`fofh1_g=JE9sEu$ zQa1L$#Z?NVz9MXxn)pRs_|`WDp;h?d3dlmkf*dINO+yGOqMpzVlG9M|{)#iC;K|-G zAR&}ac;o~{R8d6W)`;S(8v?njq7t%L)K@{wT9S;t_`!~Z0Z{0v6v4mzQ142bAXZG9 zuAH%x`lufJhmrn=Dtg96Qm_12D^Ow{h<7I8LSgRX`BK!iL@nqce2;i+xtRRW;T@?% zjdf{{Q>B#cGCzFJbUt0GgMmNPUfquWPJjCmIkb2$;{cQ;vcdmqC}r=nYK|SC{y{Qa zEpg-c^vYQLUd}Gv-skm$vT0tE4ZHRXl)T)r`Y5#RA{3&YGVh? zuTNHm-wCa|6#em4AGBld!;aea*p+dY&%Wnf6hLFdW$*BuodwHYgmSDYzOXvri9$w}ahNingrckkl3g_A>$TP5F5Y5q7h-@Ned zHSD(sSxKt=)L_`a<%PNnI)HPe6*hSAHkR&GQh~Gxq>VXMbzIfYsym zjza&^G3hEACTrPL``*WK?;iG!W$kz1hmE+`;;PiVfYN*iSQqQ=R7)bP4XE-`w8B>n zV|N3@N1Onpz-1F_flxRm$lo7KaL0kHAD)6 zAPwi(GsogB8>9~tk-#$F6VGHDosY|9!Gh!`=J7Epl(=DNfZGxcq6YXS5o2MvNe!&$ zrQ-O1);)4HB+)Aafw*F&k5@fKR+(INH#6DXB$c6$-JU9p5pLZYS2DLDiLuq^Nt!n1 zo-8E+prk6xPu(snWJ=Sk0;NwkHX`1Pw!h7qXY-hZRI2s3Bg3iST?F7$^tbOH$1u;Y zzjy|a75VsOXj#Rc$^K8=dIR<}8_I`qa%LZJlgAH*-*gA;P`W5WVIVZ_+=K>Np5D;{ z|5Lg36{F_&+W|uC+v<7Dd10CQwmeb^^YIL$a7z|XWjBm?On#iR{vk*~m|y-RgH%&D;TZ&zHH+X9_kXEkwYQc9 zK-w)wpeQ1X{7xm>98YaHDtTm#PxG|{9Uj_{#mUc+xoz|%*>uQFmx0=^^72}FAF#CI zS_ztLzV#=JqSd#d_v1bs@9h5FIX17E)7e94g2|h{#k`Y7XGdyg;U-Ic7yx)Dd?yJw z@{cbJ_+n*PU7t+Y|Ga>f{1V-LFm%hOJ4{tP|DqE1@xArFAK|LgKvl#p`--6Y+kb9g z^(y5v0>5620xWMR%d_wi2^2c)&*>ULyNgH^e)wu>7!Y!job*_V`C3Z@AWS|cZ&v;~ zRo@HZ8af0OfB>K(B4W~sE2fePQtef215?h|a8Kdof*E;bF)_TLIQ_D1l^sR-Bt5Nl zhzS#B0Df1<$DKtpHbJvs2>%+Gb{omp!NNlf_>S1d)gi)J;&{lmH39%?53AKgc;yqV zT30I+w(oxlBBRvU{Mb=aivVngphkm${6wm7Azw_Pt-zQZWCz@fo5!?c78)pAMML`l z{N@Ds90uxui5dqaQmr+l*+oct+};+0mkDm}8luFhliXc^^8NixfnN&wsS0$Z)i|>w z+VsL!Zy71Ifhu%gJLGX4UdndcJRa{I9p?s6KODt0Q_v)-2bSQyx~g#FKEU9arm%lTNq3}n1yGlIKNB%8Rf|R+f@~Sr#HI05GcSYU~!=w$tAE= zM|#ToT&g_DmL71WQMAedk^vLG<0#l2Z!G@8yaO{gm z4_^9vjsKhz=tI^Yx8HQs?y^hq94$N+-AI}|kLp|Nd z25H1|^H?!8y!ueIe9g+>6oE;sO`M$NUeLc7#p?qwHMP;{*K>Ul7m0-YskZ$z>iE|w z5;izEHcd#PlHB7$BH!Zr`@Jt)>?Pr7hut%h(2)zz1$bnoL zvHQW*2Stsa%oGHG&tDH}+ZK&J$@p3SoGsF0o9Q6~`bJyby7}}Cl9{J{ zRhe*>r9`~1nA>`DXrrt3f$H6d*`lA#L_{^5)X~D`aFgRg8mLjxyai@wG%^?!PPdke zeEe^96<5$cta5QIOTLa;{!Q zdEs4e^6g6Mznqby#0OA%AF{V&;knn<+ZRvhH$sOB6Or2mKc(J8F8>T(H7I=4#5H?p zVULtsXk+9XH?CQehI-!>RC6_Hs{CbNNXC)!t*f!KRA%;Rsh*=3q0#NXIXj($>f!|p z--wR+hwnJF&*?C=_yob1dVtegY`&{u8Q)CSu;!^}AG`}^ejZ(_&n-T$0z4aW#pLp* zdEjkm$|C=V7sgrX=a7HLd3aqZ<@zhyh(tQZ;U_|a|2i~W`%{p8irWLFll*79kF2RT z;iePQ!;5Svfi`uEV@E#YtHYr{73uhUUZtNSSrgGpm$4tJaz%3Xj;u3x7Fr~GI*+X_ z8(?180C{5~3zb9O?=3!mst4}kpIDOqlJ$J%Xz;bacLM40DRfIfM%35Tc~hHsla;s^~aU z>7XQfd3Ew#@9+1A_vQ2b{`UPJosidG~$Fc|xS*ELuN4ZKYn>62dr}bDmPAc>Z2N>eA zRBXJ=&;iXYnT%~|m|v{*`3=Se1pmuWdFo1TJx*NFI8nE@a&O?)xR-mK#b>5yhI z6D^kdS#-!Yixmm;a4?pS7&C;7l#|Ma*Shh%AGRPJK z44=&hZNk_@_(p{Ke>c($LAovcztipiP@=KHf>U287<^7(ODO(7E;RgK0WlhOp{4)k z-!aVpPQGM&dk1?fqH^EB)Wc%fT|w#xHJ`lYwjL{uWMOQ`Rslip5 z?~EI`@Fnei=M77{bNJ@J*f|vGd*!(=MDPKedFF87x)OT%w+T+{`wS1my4iaJBxVm- zSjb|VC*um>nYn|fPtUAY=aN3Z4i(Q_WM)f@O>mZWpa|$q_aOCo&T9`(V(zk_JM3>d z`w-!$=H%<;IFzbiHch7oWDXSw?GjsIN;u;Lsl%yeY$Yjbj~9)>Y3K7q2(>sHVHrvn zpgwhAa|~3d4;Zh=v)6flar&zb7ut~yaE5oMPt%2DsMCO^vWn0sVRe`{0^=MBekdKn z(>{U>ulIAiTqW5>_Tq zcWJEH2%F&v4iHU#7c>1C4?1OqrnUhQ2F>U6rR_Nl*8NfXI7XS_IN`XJN&0%@Sy*~- z?7cr43bJC#`~n=*wUF$hL-V779tK zz}GDb>I#I8B*zSq9Bqf1(MG$v`?Mw3KO0~aQ|iY6inzvW3HB}>V<3|5Y3vnqQB*ePkCm<*y%q3Y%^&~Ws^C;8<$KV-p5XvbOqt}l<*dD zA-S*t0MdeFx{vJ6)Qq=5+?=CnOtqXkgR%y=+uCS0cKP)jW};Lg@iJA@CeS#byhN1% zryra@?iYMFZCY3Dmm8W`rRrBvVhzy?E-d1L5YlMi=A@7)bz%+*iIP%9t)ny>E_z6t zYs*4lJE9+LA)q)E4(BG4JIaK&>Ad%^xys&0gH%{ zWs}z?@q89X<|s>)XF=38M1U!37hodjeXjM)ie(U4xc%D$>wvFj_QaqXq3H)o^mtTj zE%HT=HcN{5Ftz&*`VO+Ybv~4E!56;27i$hfN4D(u>WNG@&6f3s4H0@ijrsH+JZUsBYec=!ppT`So|6CmW_V=u(NP{6$ zkzam7TmNrDrPysbZw>reAU;5I@8wWi^ETP#wfx~Z3-1PX>xmG%8d~y2Ddhe_cw^)Y61OvvNlI@Oky@v$*icpa+EPN?&$dgzIh_e z9~q}JCx!G_fljhr^HU;52NYNlSuxznifQE?q2DNgMhvYw@(}O)jz(Apl|TMx;FShx zZI^1{L)Ev0BiCa3;g&n1Vf##=-(3~FOS;ZYN_{IXRQ2+fl^%LSV z`--E$w51*DS@AaE;*NUsq}U{U^;2RG2^f{jU7R`e@>=UpNW{gqA0D;TEFEx1nCsOa z;|H(T7ye8Ab}!bvAxJTUR`ruG7tf44K|&Cx@i%jO)Pe;)26v;E&}4aoG2hIe*6 zJOcmJ6WP~Ut~XNo#(});)9-vqSJvRD|HJXT-e?P0;MZuaML@JY(@ys=I|$w4Bz5S_ z%oXk1IzI7+prmL!Anjfd=G1^!v+1MD?%Cu2+;hLX!F~jX7>|2s9NMFrC`B*+XUv_B z0cJMs%CPzL{RU*cqVDjBmggm*o9o^cS%1(kEc`)AS8YK)@^ zY$?_L^zeS!$STBlpjr$m`;H+qjGYso!d&c?J{6ynk)zh6nfu@gU_V; z>=%#h$ppp4C57jj`sogeKpUkvSrrc!VU3H+^!4&7Wu>v0Xn;B0O!-Z`QYl>nxRAG` z;t94PD9)_0gJ20}R#ldFG zuF%YP-DI)Z*qgmMjaotiQxacA;z$j)!zkzmA$ z{oq%lXGY(h$tw}L+n`-%DB2V%`a=ue#D~{+<$Hbz?+*b*$*r6m&>YUEhdA z{%advvnLZ3C-^sE=#{^1^M7*pZ5V_F9YY|YtBW?|#zD9&Y1^F3vuhYG2ROzpDqKkF-9zx%a(~E>=YmK zxb-!` z1?@yKQ+n~B;sKH3doMPMn=99O%U^e4a5$I0q9--YXTbhh^(^H3&NL?daz@uqXGwfW zHG6?j4=8zhx(qkXMLfJb5|kntBXov{G)7rNh673vP;^*703_|h!=nCSe^*4CtP3Bq z8j3_oh*@2{=4Rm_YYjn><^h9n<;aE!M)8E%AZF$m`_PW~l6KVtH>=-aLwf<%$@^uz z-RO|BFN~?7s<8BF+x%nNH{T#M6W2p^zmp`fbZBUzT#X`ytcDjYBQwiAs^OFZWh&W6 zcUKpkn)55G*}s^qc_=}h5AN7_S05oy)2e^ zHJykC>xW*+f$P(D{=c~OL8tCO(aM&`#sLnMYu9BQSSVBNeX3u-KZ|cu90w6xGHyI` zZeRZxpx^%M#xoyrB>~)DHj}hWSiR#6&wS>B!jLX%$KT@#Xb!>IA;6MZ=TR%C7Zu4C z9aDvng+a_-90p6UXv|C^0cZaICIB9CT9ZssS3CJ_`^t zNj@+SZ4M|&9PsDU`qK5c+uL^R)nTv30GFFBvPDbx@{-=YX47k^P*^&L$N5y-R4u)knp1{h^7t`wAWHaN)F8h={08D)S@9m2Ca>Cy2);= zAV1@h!EqF~AfH5sq-JGHk%aO;RP*52Zkm!LOjtEh2oy(cP}1r|;aQVn&1o|W%h{|TcApNv#4+DngSqxCscUM6!izD^#>b?zt z;cm+MdDw>qX}p@DHf%vXrk3VtiwhR&Y9Et!;xu3=XSIxQrTVuHLzLcz0j@)ur*?PU zA1pN3BeOb%@pWWLIFxGG2cuMYV7@sE^C`f8V_;SCy^|ZlmGVP&t z@m$v7-9o?|OEGI<4~81Ip&`pRB(YT+2I1g#TMtEQ=gCRQPFw(@-%Mf@#^oSo*YvE& zBG6U%IVDyiN;|s(A=OWuzC|nyFF9O1 zH_TOP>2kLFBwu{OjSZ?W;}((wQ%^iO_jZd!hOzw#-~(-)oOU^#kMUFaK7G7qA=NC6 zsNX*p4Xb+ro>pSgzw*6X>Nzs|UPwhB8=MccmI7G4@TMAI17Avdqa;Z-i80ZSUMRhV zIZ)n*`~9Gf*{e4z{%)llCAfPkja-!MTXnrTE`J7FcF{IU%U(rfzqts$0eOFQ$0qgc z^r^RJZ~ysKYC+HQsIfnK8-P2KeDGA=lPhKSo>?wMNP(t4L*}Z-UzF3wjOGKwzo7;b z4Kk!kCq5G;(ApKT$FsjZ;QV-4?lsKPt^5!owX}iyQzWKSdErpWMkT5Sv655=blNIR zK(kkt^W#ItJ_k2e=WDH~Bo`LgnHu&orY|saYRm8vQbR1?j$*~yGB{YG817GZcRX>w z4Z*p4Eb6uD^@Te9x0G(E&5}f$|5@#{q5Sv{s#sxbit0_M?QVJBc(@hRECrV%= z6L9exA^@?2g||?^rjs=vz31JZe&D{+5J8b6+3pLa}?(3c|Jo)YvFN#hq+4fFAc~Sp&>(lqd&U!@M3aB*KWstv81g%6Q3ww z_go5$-HSdayGxpH-ocDbBukjRNc!D>D?4tk%9p%!@C-?Yb5kPyndxMsRR6hTdkFN^ zzh9gH-@f&^t|H9>Z{DwnzvwJ+%uadxapzj%H%5`P$6V^83khex+*yu%_H1`d{&KHo zAnj=A)xv3GaAEZ&&9w}}@rnoKhLGbg!igV4#_Ua-KoiFRvZuCQbxn8g~7v9giq-T%B$5nU8m)myjW_-zY^vum>|Q{_E3CkiVKPRRB%bSGL0CtzWR&b5)e* z*$}<^xI?&(sa*ttBjZ$E7@A=%`GLwP_PKE7+9_&E1knVx*ZZLl===>wHAxgIE!I8cjOj_-FMk(?$G21)f*N%w`_2D9iC#i*1l z1Vf%Moo(L>S#QuzAms{9V9Qigsw4<+a+zWv6-yFoj-5N^$-0>cA_wQr-%xkuv3`cB zRrhBUmF7l==69%pF834M8k8H}sR`&erI@6UOX>klz@Uu+vWAIHPr=pM)18st0EvS6 zkwW!;?a>q+&8}EmI`qDcz`daQvoy{l@}Sz$uTlX3)N=-evaUm*f==Sk93HhG^V3L8 zs+NY}=UuzbBo~#EW!}(`Px&B1$*v;d;?Y+6eHvn%Z1AfeduO@?CCA2?vnBo5(y46O zYBu&JTj4VHzvFhAK-yLN{~_%H3w9flk}?BG7`T^v>4qd$S)HISQ2Oc#kd>l>TL!^I zV?@wn|7BV7?f-+qpI@zjBC+cFCNCV^eEqk+`#M{x&%Xa%3`Os*rOgbEV$y;zIsyH| zj!5LYUyc;WdX_29p*hBHl&va_!{gl);K5{$lnG7Y(`cy*Tb$$I7SOOXgednt_`#(g zI+|T&I49MB0|`ylIkZePpn6|1#0YV?vAo20(rTL9CQ_!fRRrGciccNG7ChZ?4Mi?@ z@@}8fv)}1yLO$k$5nZuu`ql9v`W-O!XqU-zk|Vf`@>5i_2M=2JibvWoA(1P2Iau5Pp;PG|N(tJ_zrCf)@^a zi@UF~KQMR+f;K9{Vbuf!Vq0I$&=3kzf69<7Y(IG-G#UxyDyQdB1Pfs?F<;ycLfIHs zAY?`QuA1w=a)GW2W08l_MnmX=7CDlCh;TB>^iB2OWyIM+Ds?dD6Lb;p*#T(vD~+sQ zpo(kWc3@Ye*qCOcgOeJ(b)aQ&2OCoVq`V4~7MrDsI(Ox|ixUN`{)-oNiGvYEIRhmU zMhXXEP$Q0`>>l!jV20gXG0TBFiM3ynGbM9WAa5U<;aweJtD5% z8hDwB(a3!|*qN+0sU`;C(wyP5$a4KcM;KJVSW$NNZ*4uFvSPx~)=UFFq?!pY5a=apDBzXuh2qXH9`&f{h4|+bb z{c=aMZI*-ZJikcYV{Q-fEpuZ9s!m0I%V?|lHD;NY9`Q6S@#Q5%7icE(zIwAJY@WjG z@NB28YbkpD=s;(bC(zM3sy8UYZIlv|n)Btv0ZnjOS9rbE8-EdyNv~Knnm~#b0TE=m zr;zt^mu+5+x-K!kbl;-=o8{XdH!keZkO$f7qzC}`)eh;nqYIv)^ue_@1pi}M`1#*s z@F%M8C|~Ds?yvJaYl-8a*A_FF+c{#$s?QXM1_ccfB6!Ig3jcI=7y#OC(3`+TR%mhm z2=zko(@}Uy90Q!Z%*3SIB<;o9d~ishKdghn__rXxQQOwlR2t*c`$L)>Q(lFx3S(84 z1AHB3>Xsgy^<9| zz~Dzh46Mbr09i#^FS43ZgEuJ+nW?FY8o{*TE0M>Gm~qz7kacC842K&P z$6#wirGS1cg3cJTEI3%)+=jW!M`#DA-}?}%jiysU@UvyQ6u9Y4l=%K8u&Y`jnntPw z5@$2J&N0;&ukpO3mqDc$DdH|=Sp2pjx|vxhE%+^{U~~WUh~*GmhzW7WH-S^yMdU7| z!u0KTRhH0z1c_Pj(ft@;WUshNNSO;SCZz7UF_W}t3n5`_(m%z6NUt4XzCG_wm6Tlg zI8p5cL7)xO(uWZ2IdCQ(Uw3(CN%d{2Q?62I`3ELbcI~V~tbK58kgswD?x~!vuOvES z-VrU2=AEwJL`_W;h$uGF{gZ@*cbN>?dmd&Q1{pQSR)@I>8@R6ELeA%JbFAT6^R-Dd zD`y&BmC`kTdo!Vxvy)f{Q$RbeBpTPFM>Tb1x~J#0O3uSZRgC4jAIwkBR)V|As4_E; zr*4~+#}~Z}kn(sug)*)Yr4kMteqV7l&8z)PgU+s8CsuoN1l<1^bN}MpeC3`;C-(U>8Upnc5IT+x~~uQS(m z_m|cwmyfXgqzKW&8QS)A$V2-w+&PCRt;3Ewtt-*juf+QC4gsU6t@+aE?V&f+-%(zC z!4h$8;(X7rA+;yJ9&-O{euYW2Ox1iW6IP_{yEtWITt0>0`7sz!mTc@yp=cBT}A z=XCk%D!9UIo0%2lB^oN#1!cA|l*@me^{2|o+U@Jzv#3Zhx-Q#dk5=PqV{G(%|9#Uv zt-{H6l+(GV_=(K;!k=|a$v4r%&+iU%t4a7OiEH6M!=)uGSEj{}<^?8qCQ4-dK7w>i zu>FH1N%VlD2>>tQ439SlI%CPWCH?}yI=_+>(?;$Syz`i0SJ zrRy^1rAB?Jr@vEbPhZ^QRLskW=ydw!WZ<`SR z?n56pG)i{%9kepoB}Jd|Tnjj6|6=&5-W~t!(iw=1&FRpSjF<2-&ybrTZQI`C5tMgs z9KLe)nWt6j^L-YB{eOZ%2`z6+_D?zG-AVvRZpQ5FM$yTj=JQdw=?vzZagN&?$%JT3FyUAO$@z4MD{s zq_OXP;eOmMnERWb?=CJU^H??|<^5C8OS@<=Y4x;DM-8?16eq7jVrn89xNWzaTle;E z%bva_f_lH>(pz8fV~Hl0t5>UQ7FP17?81o)7Jm*khMnpN)S0;4>RgP-EPrnm3c&i_ zn_QU(o~i*6O^Cd4xL4K>QT-pm-KRfX!t3q_T{;jY$&qE6?X$vxdXB)R*mAWa$GCY6<$srw-rL6xtKdvPSd~(Eim>8~b>yRX#iu~xzh4!X z8g~p94bej$`oooyJZN+R z?)$#%f-XS*M%M8q6&yY(2nK+z14+1?F*<}4ntX%=lOcjnCLR9C&4`bLi^hT42UUXh zYiU;HW_76^CE4pXX-8D$o{~)q+)$U?pfUPkt-KsKSErgmXQ#l2fRLU0I-MXwbrl@E z4m@*R$C)T5i2>%x<`0bIElBIOZUdDh@@uF7EKbjdF3xYvy5>-D4v^zvBmSK#{sE+9 z!UriF*1fw5uZ#z2hd^HO6{WMlMqMCv08;o`p)Cv9&qa&}7b!>}16x&!A`(vw!~t(N foPc)auPmJTynSX}ws?b7yy;u~ec_BCHCy~I$3MTm diff --git a/B4A - Copy/Files/fondo_kmt.jpg b/B4A - Copy/Files/fondo_kmt.jpg deleted file mode 100644 index 4055fafdf887f7146d6f951b0be3e8a17f34a599..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33689 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 N002ovPDHLkV1l*Gg!=#h diff --git a/B4A - Copy/Files/foto.bal b/B4A - Copy/Files/foto.bal deleted file mode 100644 index 3476c4deb11a419df081d04a5c469eb6c5c1f04c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3355 zcmeHIO>7%Q6yB|!kSzfUrSylkF-<8yAtp)b4=o{aZ0AQfad2HCMMBBMJBgQWcCFp9 z+klW-ag0E;0*Mw?>VZSmTP3a_acL1flpjHFs0Snv2nB(J8VSj~Z|oh%sw+b15li#- z&HI}-?|p9^)-=u6HElh8v07-wa>6QEVqpXE(O@&-u|k1+2FYfo=8DWSnRh=728u$s zPF3AZl8OMj8R2BvF+OhPMA75WjWdVa-S@#yvQ@XHK&5PYAi|GwlfQLDL$t!QpbL0- z+(QeABe{SlRy#+lZ4nyyb-sOV{krbfWbyFS=~rWkD^~}?UoAI(_U35&#-BdsXSTL= z^nIJYd^B{buw-04d*zKS^Vj!ZJUM-Rq~n{`ZRvdP``@+dxf?H!fBC`b?QeBXr4F20 z+~jQt&xr6YQle3E^&sxHkmanlALorb-hrChV0`n*qF%mL@%^^Vn4@4N^K8h9@ zbcKufQX#K}j7pYoQA$Xn#5{{Rq6?vIJ}ZDf;T90=IIfMO^4yxs3pnPPlgqoFj8S1> zc<7jAV%W5M-!IF$6eIg4-`nKGHy7rds~ATz*lWr>nHiC z2KGVd=n-lmw=G{lLIrx1jBBWo+Ei7GmIAY;<;(5{F&-dUwc#s81&{kaHv`e_uLycE z>pH@>Ugv07K4#Of%u|ao1@YuqHkp|kPG?3Y(_`6K3LU7%L}6F19p9AOg4!PwDM7KfJ9p}0o%&{vX~>_|M8Lb-boNxhTs9;!T< zQ0`T&>A_ahPWJT^bF;G141Dq28NnN;ze^&d4}oUDUFs1RS?XnoX*GjEf-)2auDN{U zhu;BoDFLz!)D*uka&OYn90Rp`2wQEV6g~_gPTK?q+DE|Pb=VRxz_0;Wq5I9{-)@!h zhBfIsh=z6&(M=+40TT(B#{y;-7+P9;z+e;JO(gU<2)4!^BJ#FR5K}9{lYw|uMJSic z|6Bw>UgadS+(qfhQs8WPCHhus0%KVd6i3xW-WE3MN|l;KNTl~uv|4dsrOcIH9jg*i zk>CKJYT>7eREpC|SHU zMNPXyL<(4k@E+RlrA2U=jy*?=v5$zVvaCDsD%*`}%64a|WpV`IuG+nyHci?AqQ*fY zs{7AFa)`)bT5=*}gC}YC0#v<3UIf!eMD=wALXbcWAp>-{4Dcz5Bee8!A~MrKVpQ%b z5(%pa=_l@ggrEtlM@Won_8$-e_tha}fGqD0LeA-HMo3&Cno-P(P~qJS5}&nREyBkFA@~ diff --git a/B4A - Copy/Files/guardagestion.bal b/B4A - Copy/Files/guardagestion.bal deleted file mode 100644 index 6272b4e1a77c44c3a4ea1487eab88850f2d3a604..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10853 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 RELZ>l002ovPDHLkV1gG_=_~*M diff --git a/B4A - Copy/Files/historico.bal b/B4A - Copy/Files/historico.bal deleted file mode 100644 index f8786e750a8df11d6f0fa0cfe8c4d0b2928e7f13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6934 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 HXXZZu3mh}r diff --git a/B4A - Copy/Files/itembuttonblue.png b/B4A - Copy/Files/itembuttonblue.png deleted file mode 100644 index af4dc0b6e6fb333c43e978d6194936f4a8c52d92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2647 zcmb_edo+~m8h@oi8KbKyF;P2_E_R)bq=_LpGOn{lcH^4Z&DfO&k&%#FS$kKMM4bw; z45Kv1Wl-8FijhksB$vr0Gn&DSnfbo+PHSbIy;`k({y2Zk%scPz{XLi8`#jJ0B|DSs zFiX}h0RUj^57@W@umFMUHr2)OTk>2h0{*D|cEIx#0NXYwK1vby2z0o)Cd~Fwm|N)4 zuyEg#fxs#t)Gu(oJ=HfT&^6FEAo9eEz&(&SWN%~T9`SafmvB5gNT+U!7uj;+kL4~K z+;O<&m;Y&e;FXV>9(h;Nx!cO!IJIRIFO{@{=?*Znr-3h0PBMoRwp558Mq;BtA?z?Kk32)B?I}>+?Y4S~n?rD4Vfs#!wsaW2& zgJ(n3qcjn7F;U&a&m}s4jB2e6fQ711@{l`uH({oKF8yw;2k*nt!vh3K^TaN&`nN0A|vw zr4)LTgDHdp8U{l1@o=xAOvZbs?Y5mTPWy9lD_Zjr8a~V1OqwB$?y2YMpt3Pb!#T!y zay0-u^mAB3LUcoI5+k=uUSl+wbT%MN9Fxvtf z%^-IDv%?JU6{0U6y75d2fQy&VH>tS#ru}gJ>S`9+lVAeCKA{=|fMfqQdK#+wWuc$A z!In&~P9#8UmPk?I+MUquF=knzmu*3#zk+-5XR|?g-54!m-;@fB&`GQe>Xbgl3@A1| zmOv|JxOhlc*xLs&@B|NlCTzjFBb%$Jic_z!sD)xv11SD|g<}QKnu54q2E8bduNJmcXxSB67ESZ;xD)NlR1rQjixjVliF&0T$`)p-2+J@Zasi^bv_j_a}oD(^iL zR#~<XxxHue*KUOE-`i?2?OTmGD;Dlj)NR{~;aar6nh>O=s(m(laK_k~9EN`J&Q) zU)7gHyNU$qEWsZ+uv$fe?J4yQiYr;Gi|mI(_V2ZtSN{9ie;=7Af1}tu@)xqAF6WWb z^rxL?71>}+_agVYP5dEtR64=yucS5nf6BE-4aHUFK^Yve=rE~gCG67C0SX;|eF1DY za)roDR;3VVZPA0}NFeWaFzg^=akjuP<)nF7RkH+E%8JucZ8;}X=Qu*# zw~I(3(J$lWG3fd09Z_5RFgGuGNMQT9TyYW@YaAcxuZ*BMiYXX*ko2en7SXXri_b#1 zb?VsE%$P&Ordo=`zLm1*f^@Txrh($wWe{L+Fvp4CaxjvD{sVpV^tAEy1HZ zXk+kUbs-~TGLa+|P6y3-M28QTOI0pX1(N3Y2L9*iMgf7U_pt4UG>)d%;EDl(Sc|yI zs|LQJlpb!p$0a?+XYdouWV(EfRAl151=0p8DeW8tvHoi3Dh z02FKx3x!lIJ}s;y-Bpwu^L9H8hxDYNz1-c|NS>}^!LJ#%z8U3dWz&m@1y%>qN7Ut@ z?l%dhA|rDoDxaD&Fc@aeLDV>hm!Rhs?Td-4Ye~cVFpN@(!M=>=>q9)ddp6#uUiryB zWam%xmzo-}viM%wtjkBbZoCnmwc!FtqJ7fyy)&hJ=R z?x$L`GmmN^Q&|lp%VKxRo3PP3uoB;R+h+=In7?(45@S78vq>KLuZL~WGi=VtI2Jy3 zR1vnTpucO*-wNKoC E01Tvq<^TWy diff --git a/B4A - Copy/Files/k.png b/B4A - Copy/Files/k.png deleted file mode 100644 index 065a07028de14d44668773e85a5d2e8f6c3d44a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34395 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 JG^jm`{6Fs@+%5nB diff --git a/B4A - Copy/Files/kelloggs.png b/B4A - Copy/Files/kelloggs.png deleted file mode 100644 index 4debf15bad095c8d26059c74de12ca143916e922..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4718 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