Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Asteriscos

manipulando txt

Recommended Posts

Olá pessoal,Possuo o código abaixo que funciona perfeitamente preenchendo um selectbox com os dados de um arquivo texto.A dificuldade está no seguinte:Possuo o seguinte arquivo texto.txt1 - ADMINISTRATIVO1 - APOIO-AM1 - APOIO-APLICAÇÃO1 - APOIO-ARS2 - APOIO-BA2 - APOIO-BANDA - LARGA2 - APOIO-CAM3 - APOIO-CAXIAS3 - APOIO-CE4 - APOIO-COMPRASEu gostaria que fosse mostrado no selectbox:ADMINISTRATIVOAPOIO-AMAPOIO-APLICAÇÃOAPOIO-ARSAPOIO-BAAPOIO-BANDA - LARGAAPOIO-CAMAPOIO-CAXIASAPOIO-CEAPOIO-COMPRASe que fosse postado no formulário de destino por exemplo:3 - APOIO-CAXIASpois preciso saber o código: 3 e a descrição: APOIO-CAXIASSegue o código funcionando apenas para preencher o selectbox.Desde já agradeçoAsteriscos.<%Function PopulateSelectBoxFromFile(FullPath)'Propósito: Listar todo o conteudo de um arquivo de texto, dentro de um selectbox'Parametros: FileName: Full Path of File On Server'Notas: Usamos cboItems como o nome do selectbox, altere para oq voce usar'***********************************************************dim objFso, objTextStreamdim strContents, arrContentsdim lCtr, lCountConst ForReading = 1'pega conteudo do arquivoset objFso = Server.CreateObject("Scripting.FileSystemObject")Set objTextStream = objFso.OpenTextFile(FullPath, ForReading)strContents = objTextStream.ReadAllobjTextStream.Close'valores do arquivo quebrados em linhasarrContents = Split(strContents, vbCrlf)lCount = UBound(arrContents) response.write "<SELECT NAME = 'cboItems'>"'listando no selectboxFor lCtr = 0 To lCountresponse.write "<OPTION VALUE "if lCtr = 0 then response.write " SELECTED "response.write "= '" & arrContents(lctr) & "'>"response.write arrContents(lctr) & "</OPTION>"Nextresponse.write "</SELECT>"set objTextStream = Nothingset objFSO = NothingEnd Function%><!-- EXEMPLO DE USO --> <HTML><BODY><FORM NAME = MyForm METHOD = POST ACTION = 'test.asp'><%PopulateSelectBoxFromFile "C:\CENTRAL DE APOIO na WEB\manipula_txt\equipes.txt"%></BODY></HTML>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se entendi... Mas você precisa selecionar esses dados, SEM os números de identificação, para exibi-los no select-one, e COM os números para exibi-los no formulário de destino... É isso? Se for... Você deve selecionar normalmente, como já o faz em seu código... Mas mude o seguinte:

 

For lCtr = 0 To lCountresponse.write "<OPTION VALUE "if lCtr = 0 then response.write " SELECTED "response.write "= '" & arrContents(lctr) & "'>"response.write arrContents(lctr) & "</OPTION>"Next

Para algo mais ou menos assim:

 

For lCtr = 0 To lCount    response.write "<OPTION VALUE "    response.write "= '" & Trim(Mid(arrContents(lctr), InStr(1, arrContents(lctr), "-") +1, Len(arrContents(lctr))))    if lCtr = 0 then response.write " SELECTED "    response.write "'>" & arrContents(lctr) & "</OPTION>"Next

Testae, acho que deve rolar... Valeu?!

 

- Fernando Botelho

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pessoal!!!Eu, ontem mesmo, tinha conseguido após algumas tentativas. * O item do selectbox fica com apenas alguns dos caracteres de uma string e o VALUE fica com a string inteira.* No próxima página eu trato novamente esta string separando em 2 partes.Segue o código:<%Function PopulateSelectBoxFromFile(FullPath)'Propósito: Listar todo o conteudo de um arquivo de texto, dentro de um selectbox'Parametros: FileName: Full Path of File On Server'Notas: Usamos cboItems como o nome do selectbox, altere para oq voce usar'***********************************************************dim objFso, objTextStreamdim strContents, arrContentsdim lCtr, lCountConst ForReading = 1'pega conteudo do arquivoset objFso = Server.CreateObject("Scripting.FileSystemObject")Set objTextStream = objFso.OpenTextFile(FullPath, ForReading)strContents = ucase(objTextStream.ReadAll)objTextStream.Close'valores do arquivo quebrados em linhasarrContents = Split(strContents, vbCrlf)lCount = UBound(arrContents) response.write "<SELECT NAME = 'cbo_transacoes'>"'listando no selectboxFor lCtr = 0 To lCountvar_string = arrContents(lctr)var_item = Mid(var_string, 5, 100)response.write "<OPTION VALUE='" & var_string & "'"if lCtr = 0 then response.write " SELECTED"response.write ">" & var_item & "</option>"Nextresponse.write "</SELECT>"set objTextStream = Nothingset objFSO = NothingEnd Function%><HTML><BODY><FORM NAME = "Form_transacoes" METHOD = "POST" ACTION = "verifica.asp"><%PopulateSelectBoxFromFile "C:\CENTRAL DE APOIO na WEB\aplicacoes\sap\transacoes.txt"%></BODY></HTML>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.