Ver Mensaje Individual
  #9
Antiguo 12 de diciembre de 2020, 23:09
orlando
Forero Junior
Última Actividad 29.01.2025 23:57
Posts Posts: 42
Likes enviados Enviados: 24
Likes recibidos Recibidos: 2

bnas tardes

esta es rutina de adicion y fd
Código COBOL:
  1.        FD ATENCION GLOBAL EXTERNAL LABEL RECORD STANDARD.
  2.        01  ATENCION-REC.
  3.           02 ATENCION-KEY.
  4.              03 OFICINA-AT PIC 99.
  5.              03 ANO-AT PIC 9(4).
  6.              03 MES-AT PIC 99.
  7.              03 DIA-AT PIC 99.        
  8.           02 ATENCION1-KEY.  
  9.              03 ANO1-AT PIC 9(4).
  10.              03 MES1-AT PIC 99.
  11.              03 DIA1-AT PIC 99.
  12.              03 OFICINA1-AT PIC 99.
  13.           02 CANT-ATENCION-AT PIC 9(6).    
  14.           02 QUEDO      PIC 99.
  15.           02 cAMPO-LIBRE PIC X(15).
  16.  
  17.  ENVIRONMENT     DIVISION.
  18.  DATA            DIVISION.
  19.  WORKING-STORAGE SECTION.
  20.  01 SWICH GLOBAL EXTERNAL.
  21.   02  SWT PIC 9.
  22.  01 SWICH1 GLOBAL EXTERNAL.
  23.   02  SWT1 PIC 9.  
  24.  01 SNU-G GLOBAL EXTERNAL.
  25.    02  SNU-1 PIC 99.
  26.    02  SNU-2 PIC 99.
  27.  01 SN-UL GLOBAL EXTERNAL.
  28.   02 SNUS-U      PIC 99.
  29.   02 SNUT-U      PIC 99.
  30. * 01 SNU-G GLOBAL EXTERNAL.
  31. * 01  SNU-1 PIC 999 value 0.
  32. * 01  SNU-2 PIC 999 value 0.
  33.  01  cantidadw            PIC 999999.
  34.  01 SNU GLOBAL EXTERNAL.
  35.   02  SNU-11            PIC 99.
  36.   02  SNU-22            PIC 99.
  37.  01  SNUS            PIC 999 VALUE 0.
  38.  01  SNUT            PIC 999 VALUE 0.
  39.  01  ACUMULADO      PIC 9(5) VALUE 0.
  40. * 01  catg GLOBAL EXTERNAL.
  41. *- 01  CAS1            PIC 999.          
  42. * 01  CAT2            PIC 999.
  43.  01 FECHA.
  44.     02 AA PIC 99.
  45.     02 MM PIC 99.
  46.     02 DD PIC 99.
  47.  01 SW  GLOBAL EXTERNAL.
  48.   02 1VEZ PIC 9.
  49. * 01 SWT   pic   9 VALUE 0.    
  50.  01 USUARIO GLOBAL EXTERNAL.
  51.     02 DEFINE       PIC 9.
  52.     02 SISTEMA      PIC 999.
  53.     02 TESORERIA    PIC 999.
  54.  01 SS PIC 999.
  55.  01 ST PIC 999.
  56.  01 SISTEMA-1 PIC 999 VALUE 0.
  57.  01 TESORERIA-2 PIC 999 VALUE 0.
  58.  01 gen GLOBAL EXTERNAL.
  59.    02 general pic 999.
  60.  01 AAD PIC 9999 VALUE ZEROS.      
  61.  01 QUEDO-W PIC 99.
  62.  01 CANT-ATENCION-AT-W  PIC 9(6).
  63.  
  64.    
  65.  PROCEDURE DIVISION.
  66.  mayor-100.
  67.          move swt to pow-numeric of cmstatic11.
  68.         IF DEFINE not = 1 or 2
  69.           INVOKE CMCOMMAND2 "SETFOCUS".  
  70.  
  71.           IF DEFINE = 1 move SISTEMA to ss.
  72.           IF DEFINE = 2 move TESORERIA to st.
  73.  INICIO.
  74.            
  75.           IF DEFINE = 1 move SS to snuS.
  76.            IF DEFINE = 2 move ST to snuT.
  77.  
  78.  
  79.  adiciona.          
  80.       IF  SWT = 0  
  81.        ADD 0 TO SNUS SNUT  
  82.            .
  83.          IF SWT = 1  AND DEFINE = 1
  84.            ADD 1 TO SNUS.
  85.  
  86.         IF SWT = 1  AND DEFINE = 2
  87.             ADD 1 TO SNUT.
  88.             move DEFINE to pow-numeric of cmstatic12.
  89.  
  90.              IF DEFINE = 1  move snuS to sistema SISTEMA-1
  91.  
  92.              MOVE POW-COLOR-RED TO FORECOLOR OF CMSTATIC3.
  93. *            
  94.            IF DEFINE = 2 move snuT to tesoreria TESORERIA-2
  95.  
  96.              MOVE POW-COLOR-BLUE TO FORECOLOR OF CMSTATIC9.
  97. **********************************************
  98.            IF SNUS = 100 AND DEFINE = 1 move 0 TO  snuS sistema
  99.                    move 0 to   swt
  100.                   ADD 1 TO CANT-ATENCION-AT
  101.                    go to mayor-100.
  102.           if snut  = 100 AND DEFINE = 2 move 0 TO  snuT TESORERIA
  103.                  move 0 to swt
  104.                 ADD 1 TO CANT-ATENCION-AT
  105.                 go to mayor-100.
  106. *           move 0 to swt.
  107. **********************************************
  108.            OPEN I-O ATENCION.
  109.            ACCEPT FECHA FROM DATE.
  110.            IF AA > 90
  111.               COMPUTE AAD = 1900 + AA
  112.               MOVE AAD TO ANO-AT ANO1-AT
  113.             ELSE
  114.               COMPUTE AAD = 2000 + AA
  115.               MOVE AAD TO  ANO-AT ANO1-AT.      
  116.  
  117. *           MOVE AA TO ANO-AT ANO1-AT.
  118.            MOVE MM TO MES-AT MES1-AT.
  119.            MOVE DD TO DIA-AT DIA1-AT.
  120.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT.
  121. *****************************************
  122. *                move swt to pow-numeric of cmstatic12
  123. *                move 1vez to pow-numeric of cmstatic13
  124. *               MOVE 0 TO  SWT.
  125. ************************rutina saber dnde quedoooo******************
  126.             IF DEFINE = 1  AND SWT = 0 or swt = 1
  127.               MOVE POW-COLOR-red TO FORECOLOR OF CMSTATIC3          
  128.               MOVE 250 TO "Size" OF "FONT" OF  CmSTATIC3
  129.               MOVE SNUS TO POW-NUMERIC OF CmSTATIC3
  130.            else  
  131.             IF DEFINE = 2  AND SWT = 0 or swt = 1
  132.               MOVE POW-COLOR-blue TO FORECOLOR OF CMSTATIC9
  133.               MOVE 250 TO "Size" OF "FONT" OF  CmSTATIC9
  134.               MOVE SNUT to poW-NUMERIC OF CmSTATIC9.      
  135. ******rut quedoooooooooooooooooooooooooooooooooooooooooooo  
  136. *
  137. ****************************fin saber dde quedoooo*********************
  138.  LEE.  READ ATENCION INVALID KEY GO CREA.
  139. *      ESCRIBE QUEDO
  140.          move 0 to 1vez
  141.         if DEFINE = 1 AND SWT = 0 or swt = 1
  142.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT
  143.            MOVE AAD TO  ANO-AT ANO1-AT      
  144.            MOVE MM TO MES-AT MES1-AT
  145.            MOVE DD TO DIA-AT DIA1-AT
  146.            ADD 1 TO QUEDO   CANT-ATENCION-AT
  147.            move quedo to snus QUEDO-W
  148.            MOVE CANT-ATENCION-AT TO CANT-ATENCION-AT-W
  149.            MOVE SNUs to poW-NUMERIC OF CmSTATIC3
  150.            move cant-atencion-at TO CAPTION OF CMSTATIC7
  151.            move QUEDO-W to quedo
  152.            MOVE CANT-ATENCION-AT-W TO CANT-ATENCION-AT
  153.            MOVE AAD TO  ANO-AT ANO1-AT    
  154.            MOVE MM TO MES-AT MES1-AT
  155.            MOVE DD TO DIA-AT DIA1-AT
  156.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT.
  157.    
  158.           if DEFINE = 2 AND SWT = 0
  159.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT
  160.            MOVE AAD TO  ANO-AT ANO1-AT      
  161.            MOVE MM TO MES-AT MES1-AT
  162.            MOVE DD TO DIA-AT DIA1-AT
  163.            ADD 1 TO QUEDO   CANT-ATENCION-AT
  164.            move quedo to SNUT QUEDO-W
  165.            MOVE CANT-ATENCION-AT TO CANT-ATENCION-AT-W
  166.            MOVE SNUT to poW-NUMERIC OF CmSTATIC9
  167.            move cant-atencion-at TO CAPTION OF CMSTATIC8
  168.            move QUEDO-W to quedo
  169.            MOVE CANT-ATENCION-AT-W TO CANT-ATENCION-AT
  170.            MOVE AAD TO  ANO-AT ANO1-AT    
  171.            MOVE MM TO MES-AT MES1-AT
  172.            MOVE DD TO DIA-AT DIA1-AT
  173.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT.
  174.  
  175.            if DEFINE = 2 AND SWT = 1
  176.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT
  177.            MOVE AAD TO  ANO-AT ANO1-AT      
  178.            MOVE MM TO MES-AT MES1-AT
  179.            MOVE DD TO DIA-AT DIA1-AT
  180.            ADD 1 TO QUEDO   CANT-ATENCION-AT
  181.            move quedo to SNUT QUEDO-W
  182.            MOVE CANT-ATENCION-AT TO CANT-ATENCION-AT-W
  183.            MOVE SNUT to poW-NUMERIC OF CmSTATIC9
  184.            move cant-atencion-at TO CAPTION OF CMSTATIC8
  185.            move QUEDO-W to quedo
  186.            MOVE CANT-ATENCION-AT-W TO CANT-ATENCION-AT
  187.            MOVE AAD TO  ANO-AT ANO1-AT    
  188.            MOVE MM TO MES-AT MES1-AT
  189.            MOVE DD TO DIA-AT DIA1-AT
  190.            MOVE DEFINE TO OFICINA-AT OFICINA1-AT.
  191.  
  192. *2345678
  193.        REWRITE ATENCION-REC INVALID KEY STOP "NO rGRABRA ".          
  194.        go fin.    
  195.    CREA.
  196.           MOVE 0 TO QUEDO
  197.           MOVE 1 TO CANT-ATENCION-AT 1vez
  198. *2345678
  199.        WRITE ATENCION-REC INVALID KEY
  200.                   MOVE 1 TO 1VEZ  STOP "NO GRABRA X CREA".
  201.        REWRITE ATENCION-REC INVALID KEY STOP "NO rGRABRA ".
  202.      
  203.  FIN.
  204.           INVOKE POW-SELF "REFRESH".        
  205.           INVOKE POW-SELF "ThruEvents".  
  206.        CLOSE ATENCION.
  207. *       MOVE 9 TO 1VEZ.
  208.         IF DEFINE = 1 and swt not = 9
  209.           MOVE CANT-ATENCION-AT TO CAPTION OF CMSTATIC7
  210.        else
  211.         IF DEFINE = 2 and swt not = 9
  212.        MOVE CANT-ATENCION-AT TO CAPTION OF CMSTATIC8.
  213. *        if  swt = 0
  214. *          move 1 to swt.
  215.           MOVE DEFINE to pow-numeric of cmstatic13.
  216.           move swt to pow-numeric of cmstatic14.  
  217.        EXIT PROGRAM.

Comentario de Moderador
Usa los botones de resalto de sintaxis

Última edición por Kuk fecha: 13 de diciembre de 2020 a las 12:52. Razón: Uso de botones de resalto de sintaxis
orlando is offline   Responder Con Cita