Programando em Cobol

Recuperando documentos antigos….da époda ca faculdade, olha só o que encontrei!

Programas em cobol.


IDENTIFICATION DIVISION.
PROGRAM-ID. PROG02.
AUTHOR. BRUNO.


*DEFINICAO DO PATH ARQUIVO DE ENTRADA
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SPECIAL-NAMES. DECIMAL-POINT IS COMMA.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT ARQ-S ASSIGN TO "CLIENTES.DAT".


*DEFINICAO DO ARQUIVO DE ENTRADA
DATA DIVISION.
FILE SECTION.
FD ARQ-S
LABEL RECORD IS STANDARD.
01 REG-S
03 COD-CLI-E PIC 9(05).
03 VALOR-E PIC 9(07)V99.


*DEFINICAO DAS VARIAVEIS UTILIZADAS NO PROGRAMA
WORKING-STORAGE SECTION.
77 W-GRAVA PIC X.
77 W-OUTRO PIC X.
01 W-COD-CLI-E PIC 9(05).
01 W-VALOR-E PIC 9(07)V99.


*INICIO DA CODIFICACAO DO PROGRAMA
PROCEDURE DIVISION.
INICIO.
OPEN OUTPUT ARQ-S.


PERFORM TELA01.
CLOSE ARQ-S
STOP RUN.


*INICIO DA CONSTRUCAO DA TELA
TELA01
DISPLAY (03 21) "C A D A S T R O D E C L I E N T E S".
DISPLAY (06 09) "CLIENTE..:".
DISPLAY (08 09) "VALOR....:".
ACCEPT (06 20) W-COD-CLI-E.
ACCEPT (08 20) W-VALOR-E.
PERFORM TELA02.


TELA02
DISPLAY (16 33) " ".
DISPLAY (14 01) "----------------------------------------"
DISPLAY (14 40) "----------------------------------------"
DISPLAY (16 34) "GRAVAR...:".
ACCEPT (16 44) W-GRAVA.


IF W-GRAVA = "S"
PERFORM GRAVAR.


*PROCEDURE QUE GRAVA O REGISTRO
GRAVAR.
MOVE W-COD-CLI-E TO COD-CLI-E.
MOVE W-VALOR-E TO VALOR-E.
WRITE REG-S.
DISPLAY (16 34) " ".
DISPLAY (16 33) "CONTINUAR...:".
ACCEPT (16 48) W-OUTRO.
IF W-OUTRO = "S"
PERFORM TELA01.

Segue um TAR.GZ com todos os Programas em cobol…

Automatizando o backup do Mysql através de um script

Script de Backup do MySQL

#!/bin/bash
# backup_mysql.sh - Copyright (C) 2009 Bruno Tadeu Russo

# Definicao das variaveis
DESTINO=/mnt/mysql/
DATAI=`date +%d-%m-%Y-%Hh.%Mmin`
DATA=`date +%a-%m-%Y`

echo “1” > /tmp/backup-erro.log
echo “|——————–INICIO——————–|” > /tmp/backup.log
echo -e “Data e Hora de Inicio” >> /tmp/backup.log
echo -e “$DATAI” >> /tmp/backup.log
echo -e “Relacao de Banco de Dados” >> /tmp/backup.log

mysql -u root < lista_database.sql > saida.txt

sed 1d saida.txt > saida1.txt
sed 1d saida1.txt > saida.txt

cat saida.txt | while read BANCO;
do
mysqldump –database $BANCO -u root | gzip > $DESTINO$BANCO.bkp.gz 2> /tmp/backup-erro.log
echo -e “$BANCO ==> $DESTINO$BANCO.bkp.gz ” >> /tmp/backup.log
done

STATUS=`cat /tmp/backup-erro.log | grep backup -c`

TITULO=”OK – $HOSTNAME – MySQL – Banco de Dados”
if [ $STATUS -ne 0 ]; then
TITULO=”ERRO – $HOSTNAME – MySQL – Banco de Dados”
echo “Copia – ERRO” >> /tmp/backup.log
cat /tmp/backup-erro.log >> /tmp/backup.log
fi

echo -e “Backup finalizado com sucesso!” >> /tmp/backup.log
echo -e “Tamanho do arquivo Final:” >> /tmp/backup.log
du -sh $DESTINO*.bkp.gz >> /tmp/backup.log

DATAF=`date +%d-%m-%Y-%Hh.%Mmin`
echo -e “Data e hora de termino: $DATAF” >> /tmp/backup.log
echo -e “|———————-FIM———————-|” >> /tmp/backup.log

mail -s “$TITULO” $EMAIL < /tmp/backup.log

Para que funcione sem solicitar senha, basta configurar o arquivo ~/.my.cnf com o seguinte parâmetro:

[client]
password = SUA_SENHA

Lucro ou Prejuízo?

A aula de Gestão de Custos, me fez criar um simples “sisteminha”.

Com ele você informa o valor de venda do produto, despesas fixas e variáveis e custos fixos e variáveis, o sistema calcula a Margem de Segurança e Lucro/prejuízo!

Para acessar o sistema, acesse: http://www.brunorusso.eti.br/Programas/gestao_custos/.

Para saber mais sobre ele, veja o changelog.