	IDENTIFICATION DIVISION.
	
	PROGRAM-ID.	TESTE-TREINAMENTO. 
	 
	AUTHOR.	
	*=========================================================================* 
	*		C P M  B R A X I S - S I S T E M A S                   *
	*=========================================================================*                        
	ENVIRONMENT 			DIVISION.
	
	DATA 				DIVISION.
	
	WORKING-STORAGE			SECTION.
	
	
	INPUT-OUTPUT SECTION.
	FILE-CONTROL.  
	
	               SELECT REGISTRO-FUNCIONARIO ASSIGN TO DISK.
	               SELECT REGISTRO-MOVIMENTO   ASSIGN TO DISK.
	               SELECT LIST-FUNCIONARIO     ASSIGN TO SYS$OUTPUT.
	               SELECT LIST-RELATORIO       ASSIGN TO SYS$OUTPUT.
	               SELECT LIST-TIPO-REGISTRO   ASSIGN TO SYS$OUTPUT.
	
	FILE SECTION.
	FD REGISTRO-FUNCIONARIO                  
	01 REG-FUNCIONARIO.
	   05 MATRICULA-FUNCIONARIO-E               PIC X(05).               
	   05 NOME-FUNCIONARIO-E                    PIC X(30).
	
	FD REGISTRO-MOVIMENTO                     
	01 REG-MOVIMENTO.
	   05 MATRICULA-FUNCIONARIO-MOVIMENTO-E     PIC X(05).               
	   05 TIPO-REGISTRO-E                       PIC X(01).
	   05 CIA-SUCURSAL-RAMO-E                   PIC X(04).
	   05 VALOR-DESPESA-E                       PIC 9(04)V99.
	
	FD LISTA-FUNCIONARIO-MOVIMENTO                        
	01 REG-IMPR.
	   05   FILLER                              PIC X(20).
	   05   NOME-FUNCIONARIO-S                  PIC X(05).
	   05   FILLER                              PIC X(20).
	   05   TIPO-REGISTRO-S                    
	 PIC 9(04)V99
	   05   FILLER                              PIC X(20).
	   05   CIA-SUCURSAL-RAMO-S                 PIC X(04).
	   05   FILLER                              PIC X(20).
	   05   VALOR-DESPESA-S                     PIC 9(04)V99.
	
	FD LISTA-RELATORIO                        LABEL RECORDS ARE OMITTED.
	01 REG-FUNCIONARIO.   
	   05   FILLER 
	   05   MATRICULA-FUNCIONARIO-SS            PIC X(05). 
	   05   FILLER                              PIC X(20).
	   05   NOME-FUNCIONARIO-SS                 PIC X(30).
	   05   FILLER                              PIC X(20).
	   05   TOTAL-DESPESA-CIA                   PIC 9(04)V99. 
	   05   TOTAL-DESPESA-SUCURSAL              PIC 9(04)V99. 
	   05   TOTAL-DESPESA-RAMO                  PIC 9(04)V99.
	
	
	01 HA-MAIS-REGISTROS-FUNCIONARIO            PICTURE XXX VALUE 'SIM'.
	
	01 HA-MAIS-REGISTROS-MOVIMENTO              PICTURE XXX VALUE 'SIM'.
	
	
	
	PROCEDURE 				DIVISION.
	
	*--------------------------------------------------------------------*
	 3000-PROCESSAR			SECTION.
	*--------------------------------------------------------------------*
	
	100-MODULO-PRINC.
	
	OPEN INPUT REGISTRO-RELATORIO
	OPEN INPUT REGISTRO-MOVIMENTO
	
	OUTPUT LISTA-FUNCIONARIO-MOVIMENTO.
	OUTPUT LISTA-RELATORIO.
	
	
	READ REGISTRO-MOVIMENTO
	AT END MOVE 'NAO' TO HA-MAIS-REGISTROS-MOVIMENTO.
	
	PERFORM 200-ROTINA-MOVIMENTO
	UNTIL HA-MAIS-REGISTROS-MOVIMENTO = 'NAO'.
	
	
	READ REGISTRO-RELATORIO
	AT END MOVE 'NAO' TO HA-MAIS-REGISTROS-FUNCIONARIO.
	
	OPEN INPUT REG-IMPR
	
	PERFORM 300-ROTINA-FUNCIONARIO
	UNTIL HA-MAIS-REGISTROS-FUNCIONARIO = 'NAO'.                                                                                                                                                                                                                                         = 'NAO'. 
	
	
	CLOSE REGISTRO-FUNCIONARIO
	      REGISTRO-MOVIMENTO
	      REG-IMPR
	      LIST-FUNCIONARIO
	      LIST-RELATORIO
	      LIST-TIPO-REGISTRO.
	STOP RUN.
	
	
	200-ROTINA-MOVIMENTO
	
	MOVE SPACES TO REG-IMPR.
	
	IF  MATRICULA-FUNCIONARIO-FUNCIONARIO-E = MATRICULA-FUNCIONARIO-MOVIMENTO-E
	        MOVE NOME-FUNCIONARIO-E TO NOME-FUNCIONARIO-S. 
	        MOVE DESPESA-CIA-E TO DESPESA-CIA-S.
	        MOVE DESPESA-SUCURSAL-E TO DESPESA-SUCURSAL-S.
	        MOVE DESPESA-RAMO-E TO DESPESA-RAMO-S. 
	        MOVE CIA-SUCURSAL-RAMO-E TO CIA-SUCURSAL-RAMO-S.
	        MOVE VALOR-DESPESA-E TO VALOR-DESPESA-S.
	
	END-IF
	
	WRITE REG-IMPR
	
	READ REG-MOVIMENTO
	AT END MOVE 'NAO' TO HA-MAIS-REGISTROS-FUNCIONARIO.    
	
	READ REG-FUNCIONARIO
	AT END MOVE 'NAO' TO HA-MAIS-REGISTROS-FUNCIONARIO.
	
	
	300-ROTINA-MOVIMENTO
	
	READ  REG-IMPR
	AT END
	
	MOVE MATRICULA-FUNCIONARIO-MOVIMENTO-E TO MATRICULA-FUNCIONARIO-SS
	MOVE NOME-FUNCIONARIO-S TO NOME-FUNCIONARIO-SS 
	ADD DESPESA-CIA-S  DESPESA-SUCURSAL-S DESPESA-RAMO-S GIVING TOTAL-DESPESA-RELATORIO
	
	WRITE REG-FUNCIONARIO
	
	READ  REG-IMPR
	AT END.