UNIVERSIDADE BANDEIRANTE ANHANGUERA
CURSO SUPERIOR DE TECNOLOGIA EM ANALISE E
DESENVOLVIMENTO DE SISTEMAS
LINGUAGEM DE PROGRAMAÇÃO
JOÃO GILBERTO GOMES RA: 5213950477
EDSON JAFA RA: 5656124226
LEANDRO DA SILVA XAVIER RA: 5209945364
SALUSTRIANA LUCIA FERREIRA RA: 4200051079
PROFESSOR ORIENTADOR AISLAN RAMOS
3º SÉRIE
SÃO BERNARDO DO CAMPO
2013
GUI E CONEXÃO COM BANCO DE DADOS
Trabalho apresentado pela equipe à disciplina
de LINGUAGEM DE PROGRAMAÇÃO ao
Curso de TECNOLOGIA DE ANALISE E
DESENVOLVIMENTO DE SISTEMAS da
Universidade Anhanguera Bandeirantes de São
Bernardo do Campo.
SÃO BERNARDO DO CAMPO
NOVEMBRO DE 2013
SUMÁRIO
Conteúdo
1. GUI E PROGRAMAÇÃO...................................................................................................4
Manutenção de Bancos.................................................................................................4
OUTRAS CLASSES ( DAO E MODEL) .........................................................................10
Manutenção de Bancos/Agencias.................................................................................14
Manutenção das Contas Financeiras ............................................................................17
Manutenção dos Movimentos Financeiros....................................................................19
Manutenção do Orçamento Anual (Budget)..................................................................22
2. Descrição das Tabelas..................................................................................................29
3. Scripts das Tabelas (SQL) .............................................................................................31
4
1. GUI E PROGRAMAÇÃO
Manutenção de Bancos
package aula1;
import static javax.swing.JOptionPane.showMessageDialog;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.sql.*;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.AbstractButton;
import dao.BancoDAO;
import model.BancoModel;
import java.awt.Color;
5
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class ManutencaoBancos extends JFrame {
JTextField txtCodigo_Reduzido = new JTextField ();
JTextField txtCodigo_Banco = new JTextField ();
JTextField txtNome_Banco = new JTextField ();
public ManutencaoBancos() {
setTitle ("Manutenção de Bancos");
setSize (500,200);
setLocationRelativeTo (null);
JLabel lblCodigo_Reduzido = new JLabel ("Codigo
Reduzido :");
JLabel lblCodigo_Banco = new JLabel ("Codigo do
Banco :");
JLabel lblNome_Banco = new JLabel ("Nome do
Banco :");
setLayout (new FlowLayout());
JPanel pnl1 = new JPanel();
pnl1.setPreferredSize(new Dimension (380,80));
pnl1.setLayout (new GridLayout (3,4));
pnl1.add(lblCodigo_Reduzido);
pnl1.add(txtCodigo_Reduzido);
pnl1.add(lblCodigo_Banco);
pnl1.add(txtCodigo_Banco);
pnl1.add(lblNome_Banco);
6
pnl1.add(txtNome_Banco);
JPanel pnl2 = new JPanel();
pnl2.setPreferredSize(new Dimension (380,40));
pnl2.setLayout (new FlowLayout());
JButton btnNovo = new JButton ("Novo");
JButton btnAlterar = new JButton ("Alterar");
JButton btnExcluir = new JButton ("Excluir");
JButton btnPesquisar = new JButton ("Pesquisar");
// 30/11/2013 - prepara o botao para a acao
btnNovo.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
btnNovoActionPerformed(evt);
}
});
btnAlterar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
btnAlterarActionPerformed(evt);
}
});
btnExcluir.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
btnExcluirActionPerformed(evt);
}
});
btnPesquisar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
btnPesquisarActionPerformed(evt);
}
7
});
pnl2.add(btnNovo);
pnl2.add(btnAlterar);
pnl2.add(btnExcluir);
pnl2.add(btnPesquisar);
getContentPane().add(pnl1);
getContentPane().add(pnl2);
}
// novas opcoes
// rotina para incluir
private void btnNovoActionPerformed(ActionEvent evt) {
try {
BancoModel Wbanco = new BancoModel();
Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText());
Wbanco.setCodigo_Banco(txtCodigo_Banco.getText());
Wbanco.setNome_Banco(txtNome_Banco.getText());
BancoDAO dao = new BancoDAO();
dao.AdicionaBanco(Wbanco);// chama a rotina do dao
//
txtCodigo_Reduzido.setText(String.valueOf(dao.retornaUltimoCodigo()));
showMessageDialog(null, "Registro incluido");
} catch (SQLException e) {
showMessageDialog(null, e.getMessage());
}
}
// rotina para alterar
private void btnAlterarActionPerformed(ActionEvent evt) {
try {
BancoModel Wbanco = new BancoModel();
8
Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText());
Wbanco.setCodigo_Banco(txtCodigo_Banco.getText());
Wbanco.setNome_Banco(txtNome_Banco.getText());
BancoDAO dao = new BancoDAO();
dao.AlteraBanco(Wbanco);// chama a rotina do dao
//
txtCodigo_Reduzido.setText(String.valueOf(dao.retornaUltimoCodigo()));
showMessageDialog(null, "Registro Alterado");
} catch (SQLException e) {
showMessageDialog(null, e.getMessage());
}
}
private void btnExcluirActionPerformed(ActionEvent evt) {
try {
BancoModel Wbanco = new BancoModel();
Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText());
Wbanco.setCodigo_Banco(txtCodigo_Banco.getText());
Wbanco.setNome_Banco(txtNome_Banco.getText());
BancoDAO dao = new BancoDAO();
dao.ExcluiBanco(Wbanco); // chama a rotina do dao
//
txtCodigo_Reduzido.setText(String.valueOf(dao.retornaUltimoCodigo()));
showMessageDialog(null, "Registro Excluido");
} catch (SQLException e) {
showMessageDialog(null, e.getMessage());
}
}
private void btnPesquisarActionPerformed(ActionEvent evt) {
try {
BancoModel Wbanco = new BancoModel();
9
Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText());
Wbanco.setCodigo_Banco(txtCodigo_Banco.getText());
Wbanco.setNome_Banco(txtNome_Banco.getText());
BancoDAO dao = new BancoDAO();
dao.PesquisaBanco(Wbanco);// chama a rotina do
dao
} catch (SQLException e) {
showMessageDialog(null, e.getMessage());
}
}
public static void main (String[] args) {
new ManutencaoBancos().setVisible(true);
}
}
10
OUTRAS CLASSES ( DAO E MODEL)
// DAO
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import com.mysql.jdbc.ResultSet;
import jdbc.ConnectionFactory;
import model.BancoModel;
public class BancoDAO {
Connection con;
public void AdicionaBanco(BancoModel bancos) throws
SQLException {
con = ConnectionFactory.getConnection();
String sql = "insert into bancos (Codigo_Reduzido,
Codigo_Banco, Nome_Banco) values(?,?,?)";
PreparedStatement st = con.prepareStatement(sql);
st.setString(1, bancos.getCodigo_Reduzido());
st.setString(2, bancos.getCodigo_Banco());
st.setString(3, bancos.getNome_Banco());
st.execute();
st.close();
con.close();
}
public void AlteraBanco(BancoModel bancos) throws
SQLException {
11
con = ConnectionFactory.getConnection();
String sql = "update bancos set Codigo_Banco = ?,
Nome_Banco=? where Codigo_reduzido = ?";
PreparedStatement st = con.prepareStatement(sql);
st.setString(1, bancos.getCodigo_Banco());
st.setString(2, bancos.getNome_Banco());
st.setString(3, bancos.getCodigo_Reduzido());
st.execute();
st.close();
con.close();
}
public void ExcluiBanco(BancoModel bancos) throws
SQLException {
con = ConnectionFactory.getConnection();
String sql = "delete from bancos where Codigo_reduzido =
?";
PreparedStatement st = con.prepareStatement(sql);
st.setString(1, bancos.getCodigo_Reduzido());
st.execute();
st.close();
con.close();
}
public void PesquisaBanco(BancoModel bancos) throws
SQLException {
con = ConnectionFactory.getConnection();
String sql = "select Codigo_Reduzido, Codigo_Banco,
Nome_Banco from bancos where codigo_Reduzido = ?";
PreparedStatement st = con.prepareStatement(sql);
st.setString(1, bancos.getCodigo_Reduzido());
java.sql.ResultSet rs = st.executeQuery();
BancoModel Wbanco = null;
if (rs.next()) {
12
Wbanco = new BancoModel();
Wbanco.setCodigo_Reduzido(rs.getString("Codigo_Reduzido"));
Wbanco.setCodigo_Banco(rs.getString("Codigo_Banco"));
Wbanco.setNome_Banco(rs.getString("Nome_Banco"));
}
st.close();
rs.close();
con.close();
}
}
13
//MODEL
package model;
public class BancoModel {
private String Codigo_Reduzido;
private String Codigo_Banco;
private String Nome_Banco;
public String getCodigo_Reduzido() {
return Codigo_Reduzido;
}
public void setCodigo_Reduzido(String Codigo_Reduzido) {
this.Codigo_Reduzido = Codigo_Reduzido;
}
public String getCodigo_Banco() {
return Codigo_Banco;
}
public void setCodigo_Banco(String Codigo_Banco) {
this.Codigo_Banco = Codigo_Banco;
}
public String getNome_Banco(){
return Nome_Banco;
}
public void setNome_Banco(String Nome_Banco) {
this.Nome_Banco = Nome_Banco;
}
}
14
Manutenção de Bancos/Agencias
package Aula01;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
public class ManutencaoBancosAgencias extends JFrame {
public ManutencaoBancosAgencias() {
setTitle ("Manutenção de Bancos/Agencias");
setSize (500,200);
setLocationRelativeTo (null);
JLabel lblCodigo_Reduzido = new JLabel ("Codigo Reduzido
:");
JLabel lblAgencia = new JLabel ("Agencia :");
JLabel lblNome_Agencia = new JLabel ("Nome da
Agencia :");
JLabel lblConta_Banco = new JLabel ("Conta Corrente
:");
JTextField txtCodigo_Reduzido = new JTextField ();
15
JTextField txtAgencia = new JTextField ();
JTextField txtNome_Agencia = new JTextField ();
JTextField txtConta_Banco = new JTextField ();
setLayout (new FlowLayout());
JPanel pnl1 = new JPanel();
pnl1.setPreferredSize(new Dimension (380,80));
pnl1.setLayout (new GridLayout (4,4));
pnl1.add(lblCodigo_Reduzido);
pnl1.add(txtCodigo_Reduzido);
pnl1.add(lblAgencia);
pnl1.add(txtAgencia);
pnl1.add(lblNome_Agencia);
pnl1.add(txtNome_Agencia);
pnl1.add(lblConta_Banco);
pnl1.add(txtConta_Banco);
JPanel pnl2 = new JPanel();
pnl2.setPreferredSize(new Dimension (380,40));
pnl2.setLayout (new FlowLayout());
JButton btnNovo = new JButton ("Novo");
JButton btnAlterar = new JButton ("Alterar");
JButton btnExcluir = new JButton ("Excluir");
JButton btnPesquisar = new JButton ("Pesquisar");
pnl2.add(btnNovo);
pnl2.add(btnAlterar);
pnl2.add(btnExcluir);
pnl2.add(btnPesquisar);
getContentPane().add(pnl1);
16
getContentPane().add(pnl2);
}
public static void main (String[] args) {
new ManutencaoBancosAgencias().setVisible(true);
}
}
17
Manutenção das Contas Financeiras
ackage Aula01;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
public class ManutencaoContasFinanceiras extends JFrame {
public ManutencaoContasFinanceiras() {
setTitle ("Manutenção das Contas Financeiras");
setSize (500,200);
setLocationRelativeTo (null);
JLabel lblConta_Financeira = new JLabel ("Conta Financeira
:");
JLabel lblDescricao = new JLabel ("Descrição :");
JLabel lblTipo_Conta = new JLabel ("Tipo da Conta :");
JTextField txtConta_Financeira = new JTextField ();
JTextField txtDescricao = new JTextField ();
JTextField txtTipo_Conta = new JTextField ();
18
setLayout (new FlowLayout());
JPanel pnl1 = new JPanel();
pnl1.setPreferredSize(new Dimension (380,80));
pnl1.setLayout (new GridLayout (3,3));
pnl1.add(lblConta_Financeira);
pnl1.add(txtConta_Financeira);
pnl1.add(lblDescricao);
pnl1.add(txtDescricao);
pnl1.add(lblTipo_Conta);
pnl1.add(txtTipo_Conta);
JPanel pnl2 = new JPanel();
pnl2.setPreferredSize(new Dimension (380,40));
pnl2.setLayout (new FlowLayout());
JButton btnNovo = new JButton ("Novo");
JButton btnAlterar = new JButton ("Alterar");
JButton btnExcluir = new JButton ("Excluir");
JButton btnPesquisar = new JButton ("Pesquisar");
pnl2.add(btnNovo);
pnl2.add(btnAlterar);
pnl2.add(btnExcluir);
pnl2.add(btnPesquisar);
getContentPane().add(pnl1);
getContentPane().add(pnl2);
}
public static void main (String[] args) {
new ManutencaoContasFinanceiras().setVisible(true);
}
}
19
Manutenção dos Movimentos Financeiros
package Aula01;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
public class ManutencaoMovimentosFinanceiros extends JFrame {
public ManutencaoMovimentosFinanceiros() {
setTitle ("Manutenção dos Movimentos Financeiros");
setSize (500,200);
setLocationRelativeTo (null);
JLabel lblId_Movimento = new JLabel ("Id Movimento :");
JLabel lblData = new JLabel ("Data :");
JLabel lblConta_Financeira = new JLabel ("Conta Financeira
:");
JLabel lblBanco = new JLabel ("Banco :");
JLabel lblValor = new JLabel ("Valor :");
JLabel lblHistorico = new JLabel ("Historico :");
20
JTextField txtId_Movimento = new JTextField ();
JTextField txtData = new JTextField ();
JTextField txtConta_Financeira = new JTextField ();
JTextField txtBanco = new JTextField
();
JTextField txtValor = new JTextField
();
JTextField txtHistorico = new JTextField ();
setLayout (new FlowLayout());
JPanel pnl1 = new JPanel();
pnl1.setPreferredSize(new Dimension (380,80));
pnl1.setLayout (new GridLayout (3,4));
pnl1.add(lblId_Movimento);
pnl1.add(txtId_Movimento);
pnl1.add(lblData);
pnl1.add(txtData);
pnl1.add(lblConta_Financeira);
pnl1.add(txtConta_Financeira);
pnl1.add(lblBanco);
pnl1.add(txtBanco);
pnl1.add(lblValor);
pnl1.add(txtValor);
pnl1.add(lblHistorico);
pnl1.add(txtHistorico);
JPanel pnl2 = new JPanel();
pnl2.setPreferredSize(new Dimension (380,40));
pnl2.setLayout (new FlowLayout());
21
JButton btnNovo = new JButton ("Novo");
JButton btnAlterar = new JButton ("Alterar");
JButton btnExcluir = new JButton ("Excluir");
JButton btnPesquisar = new JButton ("Pesquisar");
pnl2.add(btnNovo);
pnl2.add(btnAlterar);
pnl2.add(btnExcluir);
pnl2.add(btnPesquisar);
getContentPane().add(pnl1);
getContentPane().add(pnl2);
}
public static void main (String[] args) {
new ManutencaoMovimentosFinanceiros().setVisible(true);
}
}
22
Manutenção do Orçamento Anual (Budget)
package Aula01;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
public class ManutencaoOrcamento extends JFrame {
public ManutencaoOrcamento() {
setTitle ("Manutenção do Orçamento (Budget)");
setSize (500,500);
setLocationRelativeTo (null);
23
JLabel lblAno = new JLabel ("Ano");
JLabel lblConta_Financeira = new JLabel ("Conta
Financeira");
JLabel lblJan_Prev = new JLabel ("Janeiro");
JLabel lblFev_Prev = new JLabel ("Fevereiro");
JLabel lblMar_Prev = new JLabel ("Março");
JLabel lblAbr_Prev = new JLabel ("Abril");
JLabel lblMai_Prev = new JLabel ("Maio");
JLabel lblJun_Prev = new JLabel ("Junho");
JLabel lblJul_Prev = new JLabel ("Julho");
JLabel lblAgo_Prev = new JLabel ("Agosto");
JLabel lblSet_Prev = new JLabel ("Setembro");
JLabel lblOut_Prev = new JLabel ("Outubro");
JLabel lblNov_Prev = new JLabel ("Novembro");
JLabel lblDez_Prev = new JLabel ("Dezembro");
JLabel lblTot_Prev = new JLabel ("Total");
JLabel lblJan_Real = new JLabel ("Janeiro");
JLabel lblFev_Real = new JLabel ("Fevereiro");
JLabel lblMar_Real = new JLabel ("Março");
JLabel lblAbr_Real = new JLabel ("Abril");
JLabel lblMai_Real = new JLabel ("Maio");
JLabel lblJun_Real = new JLabel ("Junho");
JLabel lblJul_Real = new JLabel ("Julho");
JLabel lblAgo_Real = new JLabel ("Agosto");
JLabel lblSet_Real = new JLabel ("Setembro");
JLabel lblOut_Real = new JLabel ("Outubro");
JLabel lblNov_Real = new JLabel ("Novembro");
JLabel lblDez_Real = new JLabel ("Dezembro");
JLabel lblTot_Real = new JLabel ("Total");
JTextField txtAno = new JTextField ();
JTextField txtConta_Financeira = new JTextField ();
JTextField txtJan_Prev = new JTextField ();
24
JTextField txtFev_Prev = new JTextField ();
JTextField txtMar_Prev = new JTextField ();
JTextField txtAbr_Prev = new JTextField ();
JTextField txtMai_Prev = new JTextField ();
JTextField txtJun_Prev = new JTextField ();
JTextField txtJul_Prev = new JTextField ();
JTextField txtAgo_Prev = new JTextField ();
JTextField txtSet_Prev = new JTextField ();
JTextField txtOut_Prev = new JTextField ();
JTextField txtNov_Prev = new JTextField ();
JTextField txtDez_Prev = new JTextField ();
JTextField txtTot_Prev = new JTextField ();
JTextField txtJan_Real = new JTextField ();
JTextField txtFev_Real = new JTextField ();
JTextField txtMar_Real = new JTextField ();
JTextField txtAbr_Real = new JTextField ();
JTextField txtMai_Real = new JTextField ();
JTextField txtJun_Real = new JTextField ();
JTextField txtJul_Real = new JTextField ();
JTextField txtAgo_Real = new JTextField ();
JTextField txtSet_Real = new JTextField ();
JTextField txtOut_Real = new JTextField ();
JTextField txtNov_Real = new JTextField ();
JTextField txtDez_Real = new JTextField ();
JTextField txtTot_Real = new JTextField ();
setLayout (new FlowLayout());
JPanel pnl1 = new JPanel();
pnl1.setPreferredSize(new Dimension (400,80));
pnl1.setLayout (new GridLayout (5,4));
pnl1.add(lblAno);
pnl1.add(txtAno);
25
pnl1.add(lblConta_Financeira);
pnl1.add(txtConta_Financeira);
setLayout (new FlowLayout());
JPanel pnlx = new JPanel();
//pnlx.setPreferredSize(new Dimension (380,80));
pnlx.setLayout (new GridLayout (1,1));
JLabel lblExt = new JLabel ("VALORES
PREVISTOS");
pnlx.add(lblExt);
setLayout (new FlowLayout());
JPanel pnl2 = new JPanel();
pnl2.setPreferredSize(new Dimension (380,80));
pnl2.setLayout (new GridLayout (5,4));
pnl2.add(lblJan_Prev);
pnl2.add(txtJan_Prev);
pnl2.add(lblFev_Prev);
pnl2.add(txtFev_Prev);
pnl2.add(lblMar_Prev);
pnl2.add(txtMar_Prev);
pnl2.add(lblAbr_Prev);
pnl2.add(txtAbr_Prev);
pnl2.add(lblMai_Prev);
pnl2.add(txtMai_Prev);
pnl2.add(lblJun_Prev);
pnl2.add(txtJun_Prev);
pnl2.add(lblJul_Prev);
pnl2.add(txtJul_Prev);
pnl2.add(lblAgo_Prev);
pnl2.add(txtAgo_Prev);
pnl2.add(lblSet_Prev);
26
pnl2.add(txtSet_Prev);
pnl2.add(lblOut_Prev);
pnl2.add(txtOut_Prev);
pnl2.add(lblNov_Prev);
pnl2.add(txtNov_Prev);
pnl2.add(lblDez_Prev);
pnl2.add(txtDez_Prev);
pnl2.add(lblTot_Prev);
pnl2.add(txtTot_Prev);
setLayout (new FlowLayout());
JPanel pnlz = new JPanel();
//pnlx.setPreferredSize(new Dimension (380,80));
pnlz.setLayout (new GridLayout (1,1));
JLabel lblExtReal = new JLabel ("VALORES
REALIZADOS");
pnlz.add(lblExtReal);
setLayout (new FlowLayout());
JPanel pnl3 = new JPanel();
pnl3.setPreferredSize(new Dimension (380,80));
pnl3.setLayout (new GridLayout (5,4));
pnl3.add(lblJan_Real);
pnl3.add(txtJan_Real);
pnl3.add(lblFev_Real);
pnl3.add(txtFev_Real);
pnl3.add(lblMar_Real);
pnl3.add(txtMar_Real);
pnl3.add(lblAbr_Real);
pnl3.add(txtAbr_Real);
pnl3.add(lblMai_Real);
pnl3.add(txtMai_Real);
27
pnl3.add(lblJun_Real);
pnl3.add(txtJun_Real);
pnl3.add(lblJul_Real);
pnl3.add(txtJul_Real);
pnl3.add(lblAgo_Real);
pnl3.add(txtAgo_Real);
pnl3.add(lblSet_Real);
pnl3.add(txtSet_Real);
pnl3.add(lblOut_Real);
pnl3.add(txtOut_Real);
pnl3.add(lblNov_Real);
pnl3.add(txtNov_Real);
pnl3.add(lblDez_Real);
pnl3.add(txtDez_Real);
pnl3.add(lblTot_Real);
pnl3.add(txtTot_Real);
JPanel pnl4 = new JPanel();
pnl4.setPreferredSize(new Dimension (380,40));
pnl4.setLayout (new FlowLayout());
JButton btnNovo = new JButton ("Novo");
JButton btnAlterar = new JButton ("Alterar");
JButton btnExcluir = new JButton ("Excluir");
JButton btnPesquisar = new JButton ("Pesquisar");
pnl4.add(btnNovo);
pnl4.add(btnAlterar);
pnl4.add(btnExcluir);
pnl4.add(btnPesquisar);
getContentPane().add(pnl1);
getContentPane().add(pnlx);
getContentPane().add(pnl2);
28
getContentPane().add(pnlz);
getContentPane().add(pnl3);
getContentPane().add(pnl4);
}
public static void main (String[] args) {
new ManutencaoOrcamento().setVisible(true);
}
}
29
2. Descrição das Tabelas
Tabela Contas financeiras : esta tabela é usada para controlar os tipos
Conta Financeira: Numero da conta.
Descrição: Descrição desta conta.
Tipo Conta: é usado para diferenciar quando é receita ou despesa.
Tabela Bancos: esta tabela é usada para o controle dos bancos
Código reduzido: é usado um código para referencia-se a conta do
banco.
Código banco: numero do banco.
Nome : nome do banco.
Tabela Bancos Agencias: é usada para controle das agencias
Código Reduzido: usado um código para referencia-se ao numero da
agencia
Nome Agencia: descreve o nome da agencia.
Conta banco: deve-se digitar aqui a conta corrente.
Tabela Movimentos financeiros: armazena toda a movimentação do sistema.
Id movimento : controle interno , esse código sera criado
automaticamente a cada inclusão.
Data movimento: aqui deve-se informar a data do lançamento.
Conta Financeira: é o numero da conta já criada.
Valor movimento: informar o valor deste lançamento.
Código Reduzido: código da conta bancaria já criado.
Descrição: informar uma descrição deste lançamento.
Tabela Orcamento: usada para registrar toda a movimentação de entrada e
saída, para futuros relatórios.
Conta financeira: numero da conta.
Ano: o sistema ira registrar o ano do registro.
30
Jan_previsto ... dez_previsto: cada valor previsto sera armazenado nos
respectivos meses previsto, de janeiro a dezembro.
Total previsto: a soma dos meses em que foram
previstos sera armazenado neste campo.
Jan_realizado ... dez_realizado: cada valor realizado sera armazenado
nos respectivos meses em que foram realizados, de janeiro a dezembro.
Total realizado: a soma dos meses em que foram realizados os
pagamentos será armazenado neste campo.
31
3. Scripts das Tabelas (SQL)
create database orcamento;
use orcamento;
create table contas_financeiras (
conta_financeira varchar(10) primary key,
descricao varchar(40),
tipo_conta varchar(10) not null);
describe contas_financeiras;
create table bancos (
codigo_reduzido varchar(10) primary key,
codigo_banco varchar (5) not null,
nome varchar (40));
describe bancos;
create table bancos_agencias (
codigo_reduzido varchar(10) primary key,
agencia varchar (10) not null,
nome_agencia varchar (40),
conta_banco varchar (10) not null);
describe bancos_agencias;
create table movimentos_financeiros (
id_movimento int primary key ,
data_movimento date not null,
conta_financeira varchar(10) not null,
valor_movimento float not null,
codigo_reduzido varchar(10) not null,
descricao_movimento varchar(40) not null);
describe movimentos_financeiros;
create table orcamento (
conta_financeira varchar(10) primary key,
ano int not null,
jan_previsto float,
fev_previsto float,
mar_previsto float,
32
abr_previsto float,
mai_previsto float,
jun_previsto float,
jul_previsto float,
ago_previsto float,
set_previsto float,
out_previsto float,
nov_previsto float,
dez_previsto float,
total_previsto float,
jan_realizado float,
fev_realizado float,
mar_realizado float,
abr_realizado float,
mai_realizado float,
jun_realizado float,
jul_realizado float,
ago_realizado float,
set_realizado float,
out_realizado float,
nov_realizado float,
dez_realizado float,
total_realizado float);
describe orcamento;

Atps 2 bimestre do aislan

  • 1.
    UNIVERSIDADE BANDEIRANTE ANHANGUERA CURSOSUPERIOR DE TECNOLOGIA EM ANALISE E DESENVOLVIMENTO DE SISTEMAS LINGUAGEM DE PROGRAMAÇÃO JOÃO GILBERTO GOMES RA: 5213950477 EDSON JAFA RA: 5656124226 LEANDRO DA SILVA XAVIER RA: 5209945364 SALUSTRIANA LUCIA FERREIRA RA: 4200051079 PROFESSOR ORIENTADOR AISLAN RAMOS 3º SÉRIE SÃO BERNARDO DO CAMPO 2013
  • 2.
    GUI E CONEXÃOCOM BANCO DE DADOS Trabalho apresentado pela equipe à disciplina de LINGUAGEM DE PROGRAMAÇÃO ao Curso de TECNOLOGIA DE ANALISE E DESENVOLVIMENTO DE SISTEMAS da Universidade Anhanguera Bandeirantes de São Bernardo do Campo. SÃO BERNARDO DO CAMPO NOVEMBRO DE 2013
  • 3.
    SUMÁRIO Conteúdo 1. GUI EPROGRAMAÇÃO...................................................................................................4 Manutenção de Bancos.................................................................................................4 OUTRAS CLASSES ( DAO E MODEL) .........................................................................10 Manutenção de Bancos/Agencias.................................................................................14 Manutenção das Contas Financeiras ............................................................................17 Manutenção dos Movimentos Financeiros....................................................................19 Manutenção do Orçamento Anual (Budget)..................................................................22 2. Descrição das Tabelas..................................................................................................29 3. Scripts das Tabelas (SQL) .............................................................................................31
  • 4.
    4 1. GUI EPROGRAMAÇÃO Manutenção de Bancos package aula1; import static javax.swing.JOptionPane.showMessageDialog; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import java.sql.*; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.AbstractButton; import dao.BancoDAO; import model.BancoModel; import java.awt.Color;
  • 5.
    5 import java.awt.Dimension; import java.awt.FlowLayout; importjava.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.SQLException; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; public class ManutencaoBancos extends JFrame { JTextField txtCodigo_Reduzido = new JTextField (); JTextField txtCodigo_Banco = new JTextField (); JTextField txtNome_Banco = new JTextField (); public ManutencaoBancos() { setTitle ("Manutenção de Bancos"); setSize (500,200); setLocationRelativeTo (null); JLabel lblCodigo_Reduzido = new JLabel ("Codigo Reduzido :"); JLabel lblCodigo_Banco = new JLabel ("Codigo do Banco :"); JLabel lblNome_Banco = new JLabel ("Nome do Banco :"); setLayout (new FlowLayout()); JPanel pnl1 = new JPanel(); pnl1.setPreferredSize(new Dimension (380,80)); pnl1.setLayout (new GridLayout (3,4)); pnl1.add(lblCodigo_Reduzido); pnl1.add(txtCodigo_Reduzido); pnl1.add(lblCodigo_Banco); pnl1.add(txtCodigo_Banco); pnl1.add(lblNome_Banco);
  • 6.
    6 pnl1.add(txtNome_Banco); JPanel pnl2 =new JPanel(); pnl2.setPreferredSize(new Dimension (380,40)); pnl2.setLayout (new FlowLayout()); JButton btnNovo = new JButton ("Novo"); JButton btnAlterar = new JButton ("Alterar"); JButton btnExcluir = new JButton ("Excluir"); JButton btnPesquisar = new JButton ("Pesquisar"); // 30/11/2013 - prepara o botao para a acao btnNovo.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { btnNovoActionPerformed(evt); } }); btnAlterar.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { btnAlterarActionPerformed(evt); } }); btnExcluir.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { btnExcluirActionPerformed(evt); } }); btnPesquisar.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent evt) { btnPesquisarActionPerformed(evt); }
  • 7.
    7 }); pnl2.add(btnNovo); pnl2.add(btnAlterar); pnl2.add(btnExcluir); pnl2.add(btnPesquisar); getContentPane().add(pnl1); getContentPane().add(pnl2); } // novas opcoes //rotina para incluir private void btnNovoActionPerformed(ActionEvent evt) { try { BancoModel Wbanco = new BancoModel(); Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText()); Wbanco.setCodigo_Banco(txtCodigo_Banco.getText()); Wbanco.setNome_Banco(txtNome_Banco.getText()); BancoDAO dao = new BancoDAO(); dao.AdicionaBanco(Wbanco);// chama a rotina do dao // txtCodigo_Reduzido.setText(String.valueOf(dao.retornaUltimoCodigo())); showMessageDialog(null, "Registro incluido"); } catch (SQLException e) { showMessageDialog(null, e.getMessage()); } } // rotina para alterar private void btnAlterarActionPerformed(ActionEvent evt) { try { BancoModel Wbanco = new BancoModel();
  • 8.
    8 Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText()); Wbanco.setCodigo_Banco(txtCodigo_Banco.getText()); Wbanco.setNome_Banco(txtNome_Banco.getText()); BancoDAO dao =new BancoDAO(); dao.AlteraBanco(Wbanco);// chama a rotina do dao // txtCodigo_Reduzido.setText(String.valueOf(dao.retornaUltimoCodigo())); showMessageDialog(null, "Registro Alterado"); } catch (SQLException e) { showMessageDialog(null, e.getMessage()); } } private void btnExcluirActionPerformed(ActionEvent evt) { try { BancoModel Wbanco = new BancoModel(); Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText()); Wbanco.setCodigo_Banco(txtCodigo_Banco.getText()); Wbanco.setNome_Banco(txtNome_Banco.getText()); BancoDAO dao = new BancoDAO(); dao.ExcluiBanco(Wbanco); // chama a rotina do dao // txtCodigo_Reduzido.setText(String.valueOf(dao.retornaUltimoCodigo())); showMessageDialog(null, "Registro Excluido"); } catch (SQLException e) { showMessageDialog(null, e.getMessage()); } } private void btnPesquisarActionPerformed(ActionEvent evt) { try { BancoModel Wbanco = new BancoModel();
  • 9.
    9 Wbanco.setCodigo_Reduzido(txtCodigo_Reduzido.getText()); Wbanco.setCodigo_Banco(txtCodigo_Banco.getText()); Wbanco.setNome_Banco(txtNome_Banco.getText()); BancoDAO dao =new BancoDAO(); dao.PesquisaBanco(Wbanco);// chama a rotina do dao } catch (SQLException e) { showMessageDialog(null, e.getMessage()); } } public static void main (String[] args) { new ManutencaoBancos().setVisible(true); } }
  • 10.
    10 OUTRAS CLASSES (DAO E MODEL) // DAO package dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import com.mysql.jdbc.ResultSet; import jdbc.ConnectionFactory; import model.BancoModel; public class BancoDAO { Connection con; public void AdicionaBanco(BancoModel bancos) throws SQLException { con = ConnectionFactory.getConnection(); String sql = "insert into bancos (Codigo_Reduzido, Codigo_Banco, Nome_Banco) values(?,?,?)"; PreparedStatement st = con.prepareStatement(sql); st.setString(1, bancos.getCodigo_Reduzido()); st.setString(2, bancos.getCodigo_Banco()); st.setString(3, bancos.getNome_Banco()); st.execute(); st.close(); con.close(); } public void AlteraBanco(BancoModel bancos) throws SQLException {
  • 11.
    11 con = ConnectionFactory.getConnection(); Stringsql = "update bancos set Codigo_Banco = ?, Nome_Banco=? where Codigo_reduzido = ?"; PreparedStatement st = con.prepareStatement(sql); st.setString(1, bancos.getCodigo_Banco()); st.setString(2, bancos.getNome_Banco()); st.setString(3, bancos.getCodigo_Reduzido()); st.execute(); st.close(); con.close(); } public void ExcluiBanco(BancoModel bancos) throws SQLException { con = ConnectionFactory.getConnection(); String sql = "delete from bancos where Codigo_reduzido = ?"; PreparedStatement st = con.prepareStatement(sql); st.setString(1, bancos.getCodigo_Reduzido()); st.execute(); st.close(); con.close(); } public void PesquisaBanco(BancoModel bancos) throws SQLException { con = ConnectionFactory.getConnection(); String sql = "select Codigo_Reduzido, Codigo_Banco, Nome_Banco from bancos where codigo_Reduzido = ?"; PreparedStatement st = con.prepareStatement(sql); st.setString(1, bancos.getCodigo_Reduzido()); java.sql.ResultSet rs = st.executeQuery(); BancoModel Wbanco = null; if (rs.next()) {
  • 12.
    12 Wbanco = newBancoModel(); Wbanco.setCodigo_Reduzido(rs.getString("Codigo_Reduzido")); Wbanco.setCodigo_Banco(rs.getString("Codigo_Banco")); Wbanco.setNome_Banco(rs.getString("Nome_Banco")); } st.close(); rs.close(); con.close(); } }
  • 13.
    13 //MODEL package model; public classBancoModel { private String Codigo_Reduzido; private String Codigo_Banco; private String Nome_Banco; public String getCodigo_Reduzido() { return Codigo_Reduzido; } public void setCodigo_Reduzido(String Codigo_Reduzido) { this.Codigo_Reduzido = Codigo_Reduzido; } public String getCodigo_Banco() { return Codigo_Banco; } public void setCodigo_Banco(String Codigo_Banco) { this.Codigo_Banco = Codigo_Banco; } public String getNome_Banco(){ return Nome_Banco; } public void setNome_Banco(String Nome_Banco) { this.Nome_Banco = Nome_Banco; } }
  • 14.
    14 Manutenção de Bancos/Agencias packageAula01; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.GridLayout; public class ManutencaoBancosAgencias extends JFrame { public ManutencaoBancosAgencias() { setTitle ("Manutenção de Bancos/Agencias"); setSize (500,200); setLocationRelativeTo (null); JLabel lblCodigo_Reduzido = new JLabel ("Codigo Reduzido :"); JLabel lblAgencia = new JLabel ("Agencia :"); JLabel lblNome_Agencia = new JLabel ("Nome da Agencia :"); JLabel lblConta_Banco = new JLabel ("Conta Corrente :"); JTextField txtCodigo_Reduzido = new JTextField ();
  • 15.
    15 JTextField txtAgencia =new JTextField (); JTextField txtNome_Agencia = new JTextField (); JTextField txtConta_Banco = new JTextField (); setLayout (new FlowLayout()); JPanel pnl1 = new JPanel(); pnl1.setPreferredSize(new Dimension (380,80)); pnl1.setLayout (new GridLayout (4,4)); pnl1.add(lblCodigo_Reduzido); pnl1.add(txtCodigo_Reduzido); pnl1.add(lblAgencia); pnl1.add(txtAgencia); pnl1.add(lblNome_Agencia); pnl1.add(txtNome_Agencia); pnl1.add(lblConta_Banco); pnl1.add(txtConta_Banco); JPanel pnl2 = new JPanel(); pnl2.setPreferredSize(new Dimension (380,40)); pnl2.setLayout (new FlowLayout()); JButton btnNovo = new JButton ("Novo"); JButton btnAlterar = new JButton ("Alterar"); JButton btnExcluir = new JButton ("Excluir"); JButton btnPesquisar = new JButton ("Pesquisar"); pnl2.add(btnNovo); pnl2.add(btnAlterar); pnl2.add(btnExcluir); pnl2.add(btnPesquisar); getContentPane().add(pnl1);
  • 16.
    16 getContentPane().add(pnl2); } public static voidmain (String[] args) { new ManutencaoBancosAgencias().setVisible(true); } }
  • 17.
    17 Manutenção das ContasFinanceiras ackage Aula01; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.GridLayout; public class ManutencaoContasFinanceiras extends JFrame { public ManutencaoContasFinanceiras() { setTitle ("Manutenção das Contas Financeiras"); setSize (500,200); setLocationRelativeTo (null); JLabel lblConta_Financeira = new JLabel ("Conta Financeira :"); JLabel lblDescricao = new JLabel ("Descrição :"); JLabel lblTipo_Conta = new JLabel ("Tipo da Conta :"); JTextField txtConta_Financeira = new JTextField (); JTextField txtDescricao = new JTextField (); JTextField txtTipo_Conta = new JTextField ();
  • 18.
    18 setLayout (new FlowLayout()); JPanelpnl1 = new JPanel(); pnl1.setPreferredSize(new Dimension (380,80)); pnl1.setLayout (new GridLayout (3,3)); pnl1.add(lblConta_Financeira); pnl1.add(txtConta_Financeira); pnl1.add(lblDescricao); pnl1.add(txtDescricao); pnl1.add(lblTipo_Conta); pnl1.add(txtTipo_Conta); JPanel pnl2 = new JPanel(); pnl2.setPreferredSize(new Dimension (380,40)); pnl2.setLayout (new FlowLayout()); JButton btnNovo = new JButton ("Novo"); JButton btnAlterar = new JButton ("Alterar"); JButton btnExcluir = new JButton ("Excluir"); JButton btnPesquisar = new JButton ("Pesquisar"); pnl2.add(btnNovo); pnl2.add(btnAlterar); pnl2.add(btnExcluir); pnl2.add(btnPesquisar); getContentPane().add(pnl1); getContentPane().add(pnl2); } public static void main (String[] args) { new ManutencaoContasFinanceiras().setVisible(true); } }
  • 19.
    19 Manutenção dos MovimentosFinanceiros package Aula01; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.GridLayout; public class ManutencaoMovimentosFinanceiros extends JFrame { public ManutencaoMovimentosFinanceiros() { setTitle ("Manutenção dos Movimentos Financeiros"); setSize (500,200); setLocationRelativeTo (null); JLabel lblId_Movimento = new JLabel ("Id Movimento :"); JLabel lblData = new JLabel ("Data :"); JLabel lblConta_Financeira = new JLabel ("Conta Financeira :"); JLabel lblBanco = new JLabel ("Banco :"); JLabel lblValor = new JLabel ("Valor :"); JLabel lblHistorico = new JLabel ("Historico :");
  • 20.
    20 JTextField txtId_Movimento =new JTextField (); JTextField txtData = new JTextField (); JTextField txtConta_Financeira = new JTextField (); JTextField txtBanco = new JTextField (); JTextField txtValor = new JTextField (); JTextField txtHistorico = new JTextField (); setLayout (new FlowLayout()); JPanel pnl1 = new JPanel(); pnl1.setPreferredSize(new Dimension (380,80)); pnl1.setLayout (new GridLayout (3,4)); pnl1.add(lblId_Movimento); pnl1.add(txtId_Movimento); pnl1.add(lblData); pnl1.add(txtData); pnl1.add(lblConta_Financeira); pnl1.add(txtConta_Financeira); pnl1.add(lblBanco); pnl1.add(txtBanco); pnl1.add(lblValor); pnl1.add(txtValor); pnl1.add(lblHistorico); pnl1.add(txtHistorico); JPanel pnl2 = new JPanel(); pnl2.setPreferredSize(new Dimension (380,40)); pnl2.setLayout (new FlowLayout());
  • 21.
    21 JButton btnNovo =new JButton ("Novo"); JButton btnAlterar = new JButton ("Alterar"); JButton btnExcluir = new JButton ("Excluir"); JButton btnPesquisar = new JButton ("Pesquisar"); pnl2.add(btnNovo); pnl2.add(btnAlterar); pnl2.add(btnExcluir); pnl2.add(btnPesquisar); getContentPane().add(pnl1); getContentPane().add(pnl2); } public static void main (String[] args) { new ManutencaoMovimentosFinanceiros().setVisible(true); } }
  • 22.
    22 Manutenção do OrçamentoAnual (Budget) package Aula01; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.GridLayout; public class ManutencaoOrcamento extends JFrame { public ManutencaoOrcamento() { setTitle ("Manutenção do Orçamento (Budget)"); setSize (500,500); setLocationRelativeTo (null);
  • 23.
    23 JLabel lblAno =new JLabel ("Ano"); JLabel lblConta_Financeira = new JLabel ("Conta Financeira"); JLabel lblJan_Prev = new JLabel ("Janeiro"); JLabel lblFev_Prev = new JLabel ("Fevereiro"); JLabel lblMar_Prev = new JLabel ("Março"); JLabel lblAbr_Prev = new JLabel ("Abril"); JLabel lblMai_Prev = new JLabel ("Maio"); JLabel lblJun_Prev = new JLabel ("Junho"); JLabel lblJul_Prev = new JLabel ("Julho"); JLabel lblAgo_Prev = new JLabel ("Agosto"); JLabel lblSet_Prev = new JLabel ("Setembro"); JLabel lblOut_Prev = new JLabel ("Outubro"); JLabel lblNov_Prev = new JLabel ("Novembro"); JLabel lblDez_Prev = new JLabel ("Dezembro"); JLabel lblTot_Prev = new JLabel ("Total"); JLabel lblJan_Real = new JLabel ("Janeiro"); JLabel lblFev_Real = new JLabel ("Fevereiro"); JLabel lblMar_Real = new JLabel ("Março"); JLabel lblAbr_Real = new JLabel ("Abril"); JLabel lblMai_Real = new JLabel ("Maio"); JLabel lblJun_Real = new JLabel ("Junho"); JLabel lblJul_Real = new JLabel ("Julho"); JLabel lblAgo_Real = new JLabel ("Agosto"); JLabel lblSet_Real = new JLabel ("Setembro"); JLabel lblOut_Real = new JLabel ("Outubro"); JLabel lblNov_Real = new JLabel ("Novembro"); JLabel lblDez_Real = new JLabel ("Dezembro"); JLabel lblTot_Real = new JLabel ("Total"); JTextField txtAno = new JTextField (); JTextField txtConta_Financeira = new JTextField (); JTextField txtJan_Prev = new JTextField ();
  • 24.
    24 JTextField txtFev_Prev =new JTextField (); JTextField txtMar_Prev = new JTextField (); JTextField txtAbr_Prev = new JTextField (); JTextField txtMai_Prev = new JTextField (); JTextField txtJun_Prev = new JTextField (); JTextField txtJul_Prev = new JTextField (); JTextField txtAgo_Prev = new JTextField (); JTextField txtSet_Prev = new JTextField (); JTextField txtOut_Prev = new JTextField (); JTextField txtNov_Prev = new JTextField (); JTextField txtDez_Prev = new JTextField (); JTextField txtTot_Prev = new JTextField (); JTextField txtJan_Real = new JTextField (); JTextField txtFev_Real = new JTextField (); JTextField txtMar_Real = new JTextField (); JTextField txtAbr_Real = new JTextField (); JTextField txtMai_Real = new JTextField (); JTextField txtJun_Real = new JTextField (); JTextField txtJul_Real = new JTextField (); JTextField txtAgo_Real = new JTextField (); JTextField txtSet_Real = new JTextField (); JTextField txtOut_Real = new JTextField (); JTextField txtNov_Real = new JTextField (); JTextField txtDez_Real = new JTextField (); JTextField txtTot_Real = new JTextField (); setLayout (new FlowLayout()); JPanel pnl1 = new JPanel(); pnl1.setPreferredSize(new Dimension (400,80)); pnl1.setLayout (new GridLayout (5,4)); pnl1.add(lblAno); pnl1.add(txtAno);
  • 25.
    25 pnl1.add(lblConta_Financeira); pnl1.add(txtConta_Financeira); setLayout (new FlowLayout()); JPanelpnlx = new JPanel(); //pnlx.setPreferredSize(new Dimension (380,80)); pnlx.setLayout (new GridLayout (1,1)); JLabel lblExt = new JLabel ("VALORES PREVISTOS"); pnlx.add(lblExt); setLayout (new FlowLayout()); JPanel pnl2 = new JPanel(); pnl2.setPreferredSize(new Dimension (380,80)); pnl2.setLayout (new GridLayout (5,4)); pnl2.add(lblJan_Prev); pnl2.add(txtJan_Prev); pnl2.add(lblFev_Prev); pnl2.add(txtFev_Prev); pnl2.add(lblMar_Prev); pnl2.add(txtMar_Prev); pnl2.add(lblAbr_Prev); pnl2.add(txtAbr_Prev); pnl2.add(lblMai_Prev); pnl2.add(txtMai_Prev); pnl2.add(lblJun_Prev); pnl2.add(txtJun_Prev); pnl2.add(lblJul_Prev); pnl2.add(txtJul_Prev); pnl2.add(lblAgo_Prev); pnl2.add(txtAgo_Prev); pnl2.add(lblSet_Prev);
  • 26.
    26 pnl2.add(txtSet_Prev); pnl2.add(lblOut_Prev); pnl2.add(txtOut_Prev); pnl2.add(lblNov_Prev); pnl2.add(txtNov_Prev); pnl2.add(lblDez_Prev); pnl2.add(txtDez_Prev); pnl2.add(lblTot_Prev); pnl2.add(txtTot_Prev); setLayout (new FlowLayout()); JPanelpnlz = new JPanel(); //pnlx.setPreferredSize(new Dimension (380,80)); pnlz.setLayout (new GridLayout (1,1)); JLabel lblExtReal = new JLabel ("VALORES REALIZADOS"); pnlz.add(lblExtReal); setLayout (new FlowLayout()); JPanel pnl3 = new JPanel(); pnl3.setPreferredSize(new Dimension (380,80)); pnl3.setLayout (new GridLayout (5,4)); pnl3.add(lblJan_Real); pnl3.add(txtJan_Real); pnl3.add(lblFev_Real); pnl3.add(txtFev_Real); pnl3.add(lblMar_Real); pnl3.add(txtMar_Real); pnl3.add(lblAbr_Real); pnl3.add(txtAbr_Real); pnl3.add(lblMai_Real); pnl3.add(txtMai_Real);
  • 27.
    27 pnl3.add(lblJun_Real); pnl3.add(txtJun_Real); pnl3.add(lblJul_Real); pnl3.add(txtJul_Real); pnl3.add(lblAgo_Real); pnl3.add(txtAgo_Real); pnl3.add(lblSet_Real); pnl3.add(txtSet_Real); pnl3.add(lblOut_Real); pnl3.add(txtOut_Real); pnl3.add(lblNov_Real); pnl3.add(txtNov_Real); pnl3.add(lblDez_Real); pnl3.add(txtDez_Real); pnl3.add(lblTot_Real); pnl3.add(txtTot_Real); JPanel pnl4 =new JPanel(); pnl4.setPreferredSize(new Dimension (380,40)); pnl4.setLayout (new FlowLayout()); JButton btnNovo = new JButton ("Novo"); JButton btnAlterar = new JButton ("Alterar"); JButton btnExcluir = new JButton ("Excluir"); JButton btnPesquisar = new JButton ("Pesquisar"); pnl4.add(btnNovo); pnl4.add(btnAlterar); pnl4.add(btnExcluir); pnl4.add(btnPesquisar); getContentPane().add(pnl1); getContentPane().add(pnlx); getContentPane().add(pnl2);
  • 28.
  • 29.
    29 2. Descrição dasTabelas Tabela Contas financeiras : esta tabela é usada para controlar os tipos Conta Financeira: Numero da conta. Descrição: Descrição desta conta. Tipo Conta: é usado para diferenciar quando é receita ou despesa. Tabela Bancos: esta tabela é usada para o controle dos bancos Código reduzido: é usado um código para referencia-se a conta do banco. Código banco: numero do banco. Nome : nome do banco. Tabela Bancos Agencias: é usada para controle das agencias Código Reduzido: usado um código para referencia-se ao numero da agencia Nome Agencia: descreve o nome da agencia. Conta banco: deve-se digitar aqui a conta corrente. Tabela Movimentos financeiros: armazena toda a movimentação do sistema. Id movimento : controle interno , esse código sera criado automaticamente a cada inclusão. Data movimento: aqui deve-se informar a data do lançamento. Conta Financeira: é o numero da conta já criada. Valor movimento: informar o valor deste lançamento. Código Reduzido: código da conta bancaria já criado. Descrição: informar uma descrição deste lançamento. Tabela Orcamento: usada para registrar toda a movimentação de entrada e saída, para futuros relatórios. Conta financeira: numero da conta. Ano: o sistema ira registrar o ano do registro.
  • 30.
    30 Jan_previsto ... dez_previsto:cada valor previsto sera armazenado nos respectivos meses previsto, de janeiro a dezembro. Total previsto: a soma dos meses em que foram previstos sera armazenado neste campo. Jan_realizado ... dez_realizado: cada valor realizado sera armazenado nos respectivos meses em que foram realizados, de janeiro a dezembro. Total realizado: a soma dos meses em que foram realizados os pagamentos será armazenado neste campo.
  • 31.
    31 3. Scripts dasTabelas (SQL) create database orcamento; use orcamento; create table contas_financeiras ( conta_financeira varchar(10) primary key, descricao varchar(40), tipo_conta varchar(10) not null); describe contas_financeiras; create table bancos ( codigo_reduzido varchar(10) primary key, codigo_banco varchar (5) not null, nome varchar (40)); describe bancos; create table bancos_agencias ( codigo_reduzido varchar(10) primary key, agencia varchar (10) not null, nome_agencia varchar (40), conta_banco varchar (10) not null); describe bancos_agencias; create table movimentos_financeiros ( id_movimento int primary key , data_movimento date not null, conta_financeira varchar(10) not null, valor_movimento float not null, codigo_reduzido varchar(10) not null, descricao_movimento varchar(40) not null); describe movimentos_financeiros; create table orcamento ( conta_financeira varchar(10) primary key, ano int not null, jan_previsto float, fev_previsto float, mar_previsto float,
  • 32.
    32 abr_previsto float, mai_previsto float, jun_previstofloat, jul_previsto float, ago_previsto float, set_previsto float, out_previsto float, nov_previsto float, dez_previsto float, total_previsto float, jan_realizado float, fev_realizado float, mar_realizado float, abr_realizado float, mai_realizado float, jun_realizado float, jul_realizado float, ago_realizado float, set_realizado float, out_realizado float, nov_realizado float, dez_realizado float, total_realizado float); describe orcamento;