ola alguem por favor pode me dizer pq isso nao funciona ? aonde estou errando ? jah tentei de tudo !
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
}
[/code]
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
vejamos abaixo o RecordStore

Apos eu pesuisar pela entrada “reg1” funciona perfeitamente …

Soh que quando eu pesquiso com a outra entrada “reg2” nao funciona, é desviado para o else que por sua vez exibe o alert…

Porque vc sempre esta buscando por rsNomes.getRecord(1) ??? talves seja isso…
[]'s
[quote=malves_info]Porque vc sempre esta buscando por rsNomes.getRecord(1) ??? talves seja isso…
[]'s[/quote]
o “rsNomes.getRecord(1);” e para dar inicio a busca apartir do primeiro record e dentro do metodo If_Busca () a variavel record recebe o proximo record (record = reNomes.nextRecord(); ).
nao entendi pq a busca funciona somente com o “reg1” os demais registro contidos no recordstore nao funciona …
Eu tenho um exemplo de um método cliente, espero que vc tire proveito desde exemplo:
public Vector getClientes() throws SistemaException{
Vector clientes = new Vector();
Cliente cliente;
DataInputStream dis;
this.openRecordStore();
try {
RecordEnumeration re = rs.enumerateRecords(null, null, false);
while(re.hasNextElement()){
dis = new DataInputStream(new ByteArrayInputStream(rs.getRecord(re.nextRecordId())));
cliente = new Cliente();
cliente.setNome(dis.readUTF());
cliente.setEmail(dis.readUTF());
cliente.setEndereco(dis.readUTF());
clientes.addElement(cliente);
dis.reset();
}
return clientes;
} catch (Exception e) {
throw new SistemaException("Mentodo carregaClientes " + e.toString());
} finally{
this.closeRecordStore();
}
}
[quote=malves_info]Eu tenho um exemplo de um método cliente, espero que vc tire proveito desde exemplo:
public Vector getClientes() throws SistemaException{
Vector clientes = new Vector();
Cliente cliente;
DataInputStream dis;
this.openRecordStore();
try {
RecordEnumeration re = rs.enumerateRecords(null, null, false);
while(re.hasNextElement()){
dis = new DataInputStream(new ByteArrayInputStream(rs.getRecord(re.nextRecordId())));
cliente = new Cliente();
cliente.setNome(dis.readUTF());
cliente.setEmail(dis.readUTF());
cliente.setEndereco(dis.readUTF());
clientes.addElement(cliente);
dis.reset();
}
return clientes;
} catch (Exception e) {
throw new SistemaException("Mentodo carregaClientes " + e.toString());
} finally{
this.closeRecordStore();
}
}
[/code][/quote]
valeu..
mais olhando para o seu metodo nao me veio nd ... continuo sem entender, o problema eh que eu to tentando implementar o codigo abaixo no MIDlet Visual...
[code]
public void Busca () throws RecordStoreException, IOException
{
// Recupera os registros usando enumeração
try
{
reNomes = rsNomes.enumerateRecords(null, null, false);
}
catch (Exception erro)
{
}
if (reNomes.numRecords()>0)
{
ByteArrayInputStream bStream;
DataInputStream dStream;
String nameRMS = null;
byte [] record = reNomes.nextRecord();
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
if (nameRMS.compareTo(tf_Buscar.getString())== 0)
{
findAddress = true;
String nameRMS2;
nameRMS2 = dStream.readUTF();
list.append(nameRMS+" - "+nameRMS2,null);
}
record = reNomes.nextRecord();
}
if (!findAddress)
System.out.println("nao cadastrado");
}
else
{
System.out.println("nao cadastrado");
}
}
}
[/code]
eu implementei no MIDlet Visual e ficou assim:
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
} [/code]
[code]
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
[/code]
pela logica era para funcionar, mais estou com problema que eu descrevo abaixo
[quote=Rafael Oliveira da Silva]ola alguem por favor pode me dizer pq isso nao funciona ? aonde estou errando ? jah tentei de tudo !
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
}
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
vejamos abaixo o RecordStore

Apos eu pesuisar pela entrada “reg1” funciona perfeitamente …

Soh que quando eu pesquiso com a outra entrada “reg2” nao funciona, é desviado para o else que por sua vez exibe o alert…

[/quote]
[quote=Rafael Oliveira da Silva][quote=malves_info]Eu tenho um exemplo de um método cliente, espero que vc tire proveito desde exemplo:
public Vector getClientes() throws SistemaException{
Vector clientes = new Vector();
Cliente cliente;
DataInputStream dis;
this.openRecordStore();
try {
RecordEnumeration re = rs.enumerateRecords(null, null, false);
while(re.hasNextElement()){
dis = new DataInputStream(new ByteArrayInputStream(rs.getRecord(re.nextRecordId())));
cliente = new Cliente();
cliente.setNome(dis.readUTF());
cliente.setEmail(dis.readUTF());
cliente.setEndereco(dis.readUTF());
clientes.addElement(cliente);
dis.reset();
}
return clientes;
} catch (Exception e) {
throw new SistemaException("Mentodo carregaClientes " + e.toString());
} finally{
this.closeRecordStore();
}
}
[/code][/quote]
valeu..
mais olhando para o seu metodo nao me veio nd ... continuo sem entender, o problema eh que eu to tentando implementar o codigo abaixo no MIDlet Visual...
[code]
public void Busca () throws RecordStoreException, IOException
{
// Recupera os registros usando enumeração
try
{
reNomes = rsNomes.enumerateRecords(null, null, false);
}
catch (Exception erro)
{
}
if (reNomes.numRecords()>0)
{
ByteArrayInputStream bStream;
DataInputStream dStream;
String nameRMS = null;
byte [] record = reNomes.nextRecord();
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
if (nameRMS.compareTo(tf_Buscar.getString())== 0)
{
findAddress = true;
String nameRMS2;
nameRMS2 = dStream.readUTF();
list.append(nameRMS+" - "+nameRMS2,null);
}
record = reNomes.nextRecord();
}
if (!findAddress)
System.out.println("nao cadastrado");
}
else
{
System.out.println("nao cadastrado");
}
}
}
[/code]
eu implementei no MIDlet Visual e ficou assim:
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
} [/code]
[code]
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
[/code]
pela logica era para funcionar, mais estou com problema que eu descrevo abaixo
[quote=Rafael Oliveira da Silva]ola alguem por favor pode me dizer pq isso nao funciona ? aonde estou errando ? jah tentei de tudo !
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
}
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
vejamos abaixo o RecordStore

Apos eu pesuisar pela entrada “reg1” funciona perfeitamente …

Soh que quando eu pesquiso com a outra entrada “reg2” nao funciona, é desviado para o else que por sua vez exibe o alert…

[/quote][/quote]
:thumbdown: :thumbdown: ???
[quote=Rafael Oliveira da Silva]ola alguem por favor pode me dizer pq isso nao funciona ? aonde estou errando ? jah tentei de tudo !
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
}
[/code]
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
vejamos abaixo o RecordStore

Apos eu pesuisar pela entrada “reg1” funciona perfeitamente …

Soh que quando eu pesquiso com a outra entrada “reg2” nao funciona, é desviado para o else que por sua vez exibe o alert…

[/quote]
alguem ai pode me ajudar por favor ???
[quote=Rafael Oliveira da Silva]ola alguem por favor pode me dizer pq isso nao funciona ? aonde estou errando ? jah tentei de tudo !
[code]public void If_RS_Vazio () {
if (reNomes.numRecords()>0) {
record = rsNomes.getRecord(1);
while (reNomes.hasNextElement())
{
bStream = new ByteArrayInputStream (record);
dStream = new DataInputStream (bStream);
nameRMS = dStream.readUTF();
If_Busca ();
}
} else {
// write pre-action user code here
switchDisplayable (null, getAlert_RecordStore_vazio ());
// write post-action user code here
}
// enter post-if user code here
}
[/code]
public void If_Busca () {
// enter pre-if user code here
if (nameRMS.compareTo(tf_Buscar.getString())== 0) {
nameRMS2 = dStream.readUTF();
switchDisplayable (null, getLstNomes ());
lstNomes.append(nameRMS+" - "+nameRMS2,null);
record = reNomes.nextRecord();
} else {
switchDisplayable (null, getAlert_Nao_Encontrado ());
}
}
vejamos abaixo o RecordStore

Apos eu pesuisar pela entrada “reg1” funciona perfeitamente …

Soh que quando eu pesquiso com a outra entrada “reg2” nao funciona, é desviado para o else que por sua vez exibe o alert…

[/quote]
Poxa Amigo não adianta vc ficar postando um monte de vez a mesma coisa… Se alguém souber vai te ajudar com certeza mas tenha paciencia…