FoxPro/Visual FoxPro - Problema con Blucle

   
Vista:

Problema con Blucle

Publicado por Sebastian M. Barrionuevo (72 intervenciones) el 03/09/2008 03:54:19
Tengo hace varios dias este WHILE con IF, lo que quiero es que CANTIDAD por:

PRIMERO por EMP_NVL3
SEGUNDO por EMP_NVL2
TERCERO por UBICACION2
CUARTO por UBICACION1

La tabla tiene esta forma:

UBICACION1 Character(24)
UBICACION2 Character(24)
EMP_NVL2 Character(24)
EMP_NVL3 Character(10)
CANTIDAD Number(10)

La sintaxis que hice es esta(los totales no coinciden de total con cantidad):

* GUARDAR EN INCIDENTE - CERRADOS *

CLOSE ALL
SET SAFETY OFF
SELECT 0
USE INCIDENTE
SELECT 0
USE TMP_INC2
XUBI_1=TMP_INC2.UBICACION1
XDES=""
XTOT_UBI_1=0
XTOT_UBI_2=0
XUBI_2=TMP_INC2.UBICACION2
XEMP_2=TMP_INC2.EMP_NVL2
XTOT_EMP_2=0
XEMP_3=TMP_INC2.EMP_NVL3
XCANT=TMP_INC2.CANTIDAD
DO WHILE !EOF()
IF XUBI_1=TMP_INC2.UBICACION1 THEN
XTOT_UBI_1=XTOT_UBI_1+TMP_INC2.CANTIDAD
IF XUBI_2=TMP_INC2.UBICACION2 THEN
XTOT_UBI_2=XTOT_UBI_2+TMP_INC2.CANTIDAD
IF XEMP_2=TMP_INC2.EMP_NVL2 THEN
XTOT_EMP_2=XTOT_EMP_2+TMP_INC2.CANTIDAD
IF XEMP_3=TMP_INC2.EMP_NVL3 THEN
XCANT=TMP_INC2.CANTIDAD
INSERT INTO INCIDENTE (UBICACION1,UBICACION2,EMP_NVL2,EMP_NVL3,CANTIDAD);
VALUES (XUBI_1,XUBI_2,XEMP_2,XEMP_3,XCANT)
SKIP
ELSE
XEMP_3=TMP_INC2.EMP_NVL3
ENDIF
ELSE
XDES="TOTAL:"
INSERT INTO INCIDENTE (EMP_NVL2,CANTIDAD);
VALUES (XDES,XTOT_EMP_2)
XEMP_2=TMP_INC2.EMP_NVL2
XTOT_EMP_2=0
ENDIF
ELSE
XDES="TOTAL:"
INSERT INTO INCIDENTE (UBICACION2,CANTIDAD);
VALUES (XDES,XTOT_UBI_2)
XUBI_2=TMP_INC2.UBICACION2
XTOT_UBI_2=0
ENDIF
ELSE
XDES="TOTAL:"
INSERT INTO INCIDENTE (UBICACION1,CANTIDAD);
VALUES (XDES,XTOT_UBI_2)
XUBI_1=TMP_INC2.UBICACION1
XTOT_UBI_1=0
ENDIF
ENDDO

XDES="TOTAL:"
INSERT INTO INCIDENTE (EMP_NVL2,CANTIDAD);
VALUES (XDES,XTOT_EMP_2)
XEMP_2=TMP_INC2.EMP_NVL2
XTOT_EMP_2=0

XDES="TOTAL:"
INSERT INTO INCIDENTE (UBICACION2,CANTIDAD);
VALUES (XDES,XTOT_UBI_2)
XUBI_2=TMP_INC2.UBICACION2
XTOT_UBI_2=0

XDES="TOTAL:"
INSERT INTO INCIDENTE (UBICACION1,CANTIDAD);
VALUES (XDES,XTOT_UBI_2)
XUBI_1=TMP_INC2.UBICACION1
XTOT_UBI_1=XTOT_UBI_1
SELECT INCIDENTE
BROWSE

Quien quiera los dbf y los scx los puedo mandar gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder