Bom, creio que já exista uma instância de ControlPortal. Então vc não deve criar ela de novo para pegar o valor.
Pega da instância que já existe (se houver).
import dori.jasper.engine.*;
import dori.jasper.view.*;
import dori.jasper.view.JasperViewer;
import java.sql.*;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
public class RelatVeiculo {
ControlPortal cp;
private static Connection getConnection() throws
ClassNotFoundException, SQLException
{
String url = "jdbc:odbc:dbPortal";
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection MinhaConexao = DriverManager.getConnection(url);
Statement MeuState = MinhaConexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_READ_ONLY);
return MinhaConexao;
}
/* Gera Relatorio e visualiza-o */
public void geraRelatorio( ) throws JRException, Exception
{
String sql = "SELECT * FROM TBVeiculo";
// aqui suo a variavel cp
String dados = cp.tplaca.getText();
if(!cp.tplaca.getText().equals(""))
{
sql = sql + " WHERE dbplaca LIKE " + "'" dados +"'" ;
}
else
{
sql = sql ;
}
Connection MinhaConexao = getConnection();
Statement smt = MinhaConexao.createStatement();
ResultSet rs= smt.executeQuery(sql);
/* implementação da interface JRDataSource para DataSource ResultSet */
JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );
JasperPrint print = JasperFillManager.fillReport("RelatVeiculos.jasper",null,jrRS);
JasperViewer.viewReport(print);
}
public static void main(String[] args) throws JRException, Exception
{
new RelatVeiculo().geraRelatorio();
}
}
[size=“18”][/size][size=“12”][/size]
aborges
Amigao, qd vc cria uma variavel de algum tipo nao significa q ela eh um Objeto:
ControlPortalcp
Vc deve criar uma instancia do mesmo para poder chamar algum metodo. Ao q me parece tplaca eh uma variavel publica… Nao faca isso! Crie a mesma privada e faca seus respectivos getXXX e setXXX
Voltando ao assunto do cp, para instancia-lo de um new no mesmo:
ControlPortalcp=newControlPortal()
Eh isso aih
B
BomBer_Rp
aborges
so que se eu fazer isso ControlPortal cp = new ControlPortal();
ele vai executar esse programa que é grande que contem
JDesktopPane e JInternalFrame’ s
B
BomBer_Rp
esse tplaca é um JTextField aonde o usuario vai digitar dados
aborges
Quem utiliza a RelatVeiculo eh a propria ControlPortal??
Caso positivo, crie um construtor:
publicRelatVeiculo(ControlPortalcp)
Entao, na ControlPortal vc cria assim:
......=newRelatVeiculo(this);
B
BomBer_Rp
o
RelatVeiculo nele eu crio um relatorio
e quero chamar o ControlPortal somente para pegar os
valores dos JtextFields para montar a consulta sql
e no ControlPortal
eu chama o RelatVeiculo para visualizar o relatorio
aborges
“BomBer_Rp”:
o
RelatVeiculo nele eu crio um relatorio
e quero chamar o ControlPortal somente para pegar os
valores dos JtextFields para montar a consulta sql
e no ControlPortal
eu chama o RelatVeiculo para visualizar o relatorio
Nossa que nó heim !!! :shock: Isso nao eh OO
Entao ControlPortal eh sua telinha. Cara RelatVeiculo nao tem ter um objeto ControlPortal. O q ele sabe eh criar relatorios! Qd vc for construir o RelatVeiculo na ControlPortal vc pode passar os parametros de tela direto no construtor do RelatVeiculo!
B
BomBer_Rp
Kra é mesmo
é que esse dias estou tendo
Auditoria da SSASMAQ
e ISO 9001:2000
por isso estou meio abalado , valew
até mais