Ir para conteúdo

POWERED BY:

Arquivado

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

acfelipesilva

Script - Dificil de dar manutenção

Recommended Posts

Gente,

 

O código é extenso pra caramba, tá funcionando bem, to com um problema no campo processo (procno)...

Se eu digitar só número ele grava uma beleza, se eu digitar além numero, letras, ou outros caracteres, tipo "2001-20007"...

Ele grava mais passa um 5 min para terminar a gravação, ou então trava...

Pergunta: Vasculhei esse código e não vi nada de errado, porém o desenvolvedor que o fez aqui na Empresa saiu... Estou responsável para dar manutenção nesses sistema, minha primeira porvidência foi ajustar o banco de dados no Sql Server, o campo que o nº do processo está varchar(50), até aí beleza...

Meu problema está nesse código ASP, o desenvolvedor montou uma variável chave, não entendi direito o que ele quis fazer, o que sei, que é por aí que está a bronca, mas ainda não consegui resolver...

Postei esse script aqui, para ver se alguém consegue "enxergar" o que ainda não vi, onde devo mexer nesse código para que este campo receba tanto numeros como letras, caracteres especias... Lembranco que o valor desse campo deverá ser uma string...

Antigamente, o campo só recebia números, então nunca teve problema, mas como as coisas mudaram, esse campo tb passou a receber valores com caracteres especiais, o problema ta na hora de gravar...

Uma coisa que reparei que quando tiro a variavel chave na listagem de dados, o codigo funciona bem, grava normalmente strings no campo processo, daí a minha suspeita em cima do codigo que monta a variavel chave...

Caso alguém consiga resolver eu agradeço muito!!!

 

Salgado e Jonathan, obrigado pela força nos outros problemas, mas esse aqui tá dificil de matar!!!

 

ASP
<%@LANGUAGE="vb script:VerConteudo window.event.keycode"></td> 
                                </tr>
                                <tr>
                                        <td ><font class="textoss">Anexar Resenha:</font></td>
                                        <td align="left">
                                                <input name="anexarres" type="file"  class="textoss" value="Localizar" >
                                </tr>
                                <tr>                                   
                        </table>
                </td>
        </tr>
</table>
<br >
<div class="links"  style="position:relative; width:620; height:200;scrollbar-3d-light-color:#ffcc33;scrollbar-arrow-color:#000000;scrollbar-base-color:#333333;scrollbar-dark-shadow-color:#333333;scrollbar-face-color:#C4C4C3;scrollbar-highlight-color:#eeeeee;scrollbar-shadow-color:#ffffff; overflow:auto">
<table width="600"  class="borda" align="center" border="0">
        <tr>
                <td width="2%"><font class="textoss"> </font></td>
                <td ><font class="textoss">Matéria</font></td>
                <td ><font class="textoss">Dt. Ent</font></td>         
                <td ><font class="textoss">Processo No</font></td>                                                     
                <td ><font class="textoss">Vara No</font></td>         
                <td ><font class="textoss">Arquivo - Resenha</font></td>
                <td ><font class="textoss">Destino</font></td>                         
        </tr>
       
        <%
        Contador = 0
        IF not sqlC.EOF then
        CorAtu = "#FFFFFF"
            while not sqlC.EOF
                If contador = 0 then
                   contador = 1 %>
                <tr bgcolor="#C2E9A9">
                <%else
                   contador = 0 %>
                <tr bgcolor="#ffffff">
                <%End if %>
                    <%chave = cstr(sqlC("dtmRes_DatRes")) + "@" + cstr(sqlC("numRes_NumProc")) + "@" + cstr(sqlC("numRes_NumVar"))%>
                    <td width="2%"><input style=" border:none;" id="selecao" name="selecao" type="radio" value="<%=chave%>" onclick="vb script:this.className='bt'" onMouseOver="java script:this.className='bthover'" style="width:65" value="Pesquisar" name="Pesquisar" onClick="vb script:this.className='bt'" onMouseOver="java script:this.className='bthover'" style="width:65" value="Excluir" name="Excluir" onClick="vb script:this.className='bt'" onMouseOver="java script:this.className='bthover'" style="width:65" value="Gravar" name="Gravar" onClick="vb script:this.className='bt'" onMouseOver="java script:this.className='bthover'" style="width:65" type="button" value="Retornar"  name="Retornar" onClick="self.location='inicial.asp'"
                </td>
        </tr>
</table>
          <!--<td align="left"><input type="hidden" name="controle" class="textoss" id="controle" size="20" maxlength="30" value=""></td>-->
          <td align="left"><input type="hidden" name="chave1" class="textoss" id="Chave1" size="20" maxlength="30"></td>
          <td align="left"><input type="hidden" name="chave2" class="textoss" id="chave2" size="20" maxlength="30"></td>
          <td align="left"><input type="hidden" name="chave3" class="textoss" id="chave3" size="20" maxlength="30"></td>
</form>
</body>
</html>
<%objCmm.close()
  set objCmm = nothing
%>
 
<!--#include file="upload.asp"-->

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poste a parte que faz o INSERT no BD desses dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Salgado,

 

Como você pode observar na hora da inserção dos dados, mudei o comando sql para uma stored procedure afim de ganahr rapidez na hora da gravação, relamente ganhei, mas se eu colocar um valor string ("2001/2007") no campo processo, aí vai tudo por água abaixo... Tem jeito???

 

ASP
<%
set objCmm              = CreateObject("ADODB.Connection")
objCmm.Open  Application("strConn")
on error resume next
Response.Expires=0
Response.Buffer = TRUE
Response.Clear
byteCount = Request.TotalBytes
RequestBin = Request.BinaryRead(byteCount)
Dim UploadRequest
Dim clipConexao,AcaoBotao,vara,processo,dtaent , clipSql, DataNot, ano, mes, dia, anexarres, foto1, n, Assunto, Manchete, Fonte, Noticia, destinacao
dim ID_ARQ,ID_TIPOARQ
dim doc_nom,doc_caminho
dim materia
dim tipo_doc
Set UploadRequest = CreateObject("Scripting.Dictionary")
BuildUploadRequest  RequestBin
 
If UploadRequest.Item("Gravar").Item("Value") = "Gravar" then
'If Request("Gravar") = "Gravar" Then
        materia = UploadRequest.Item("materia").Item("Value")
        destinacao = UploadRequest.Item("destinacao").Item("Value")
        dtaent =UploadRequest.Item("dtaent").Item("Value")
       
        ano = cstr(year(dtaent))
        mes = mid(dtaent,4,2)
        dia = mid(dtaent,1,2)     
         
        dtaent = ano + "-" + mes + "-" + dia
        processo = UploadRequest.Item("procno").Item("Value")
               
        vara =  UploadRequest.Item("varano").Item("Value")
        arquivo = UploadRequest.Item("anexarres").Item("Value")
        hoje = date()
        anoatual = cstr(year(hoje))
        mesatual = mid(cstr(100 + month(hoje)),2,2)
        diaatual = mid(cstr(100 + day(hoje)),2,2)           
        hoje = anoatual + "-" + mesatual + "-" + diaatual
        pasta= (server.mappath(""))& "portaljuridicoarquivos"
        contentType = UploadRequest.Item("anexarres").Item("ContentType")
        filepathname = UploadRequest.Item("anexarres").Item("FileName")
        filename = Right(filepathname,Len(filepathname)-InstrRev(filepathname,""))
        filename = Replace( ucase(filename),".","_" & materia   &  filepathname2 &".")
        value = UploadRequest.Item("anexarres").Item("Value")
                               
        Set ScriptObject = Server.CreateObject("Scripting.FileSystemObject")
        pathEnd = Len(Server.mappath(Request.ServerVariables("PATH_INFO")))-14
 
        Set objFS = Server.CreateObject("Scripting.FileSystemObject")  
        If objFS.FileExists( pasta & filename ) Then
                mensagem="Já existe um arquivo cadastrado com este nome, Favor alterar arquivo"
                Response.Write("<script language='JavaScript'>alert('" &  mensagem & "');</script>")
        Else
                if filepathname <> "" then
                        Set MyFile = ScriptObject.CreateTextFile(pasta & filename)
                        For i = 1 to LenB(value)
                                 MyFile.Write chr(AscB(MidB(value,i,1)))
                        Next
                        MyFile.Close
                end if
                if err.number <> 0 then
                         mensagem = err.description
                else
                        'inserir = "Set nocount on insert into tbresenha values('" + processo + "'," + vara
                        'inserir = inserir + ",'" + dtaent + "','1753-01-01 00:00:00.000','" + materia
                        'inserir = inserir + "','" + filename + "','',0,'1753-01-01 00:00:00.000',0,'"
                        'inserir = inserir + login + "','"+ hoje + "','1753-01-01 00:00:00.000', '" + destinacao + "')"
                        inserir  = "SP_InclusaoSecretariaResenha '" & processo & "'," & vara & ",'" & dtaent & "','" & materia  & "','" & destinacao & "','" & filename & "','" & Session("Login") & "'"
                         
                        set objCmm1     = CreateObject("ADODB.Connection")
                        objCmm1.Open  Application("strConn")
                        set rs = objCmm1.Execute(inserir)
                                if      objCmm1.Errors.Count <> 0 then
                                        Response.Write "Ocorreu um erro nesta página!<BR>"
                                        Response.Write "Número do erro: " & Err.number & "<BR>"
                                        Response.Write "Descrição fornecida: " & Err.Description & "<BR>"
                                        mensagem  = "Erro na Inclusão!"
                                else
                                        mensagem  = "Operação com Sucesso"
                                end if
                        objCmm1.Close()
                        set objCmm1 = nothing
                        Response.Write("<script language='JavaScript'>alert('" &  mensagem & "');</script>")
                end if
               
        End If
       
        'inserir  = "SP_InclusaoSecretariaResenha  '" & processo & "'," & vara & ",'" & dtaent & "','" & materia  & "','" & destinacao & "','" & filename & "','" & Session("Login") & "'"
        'inserir = "Set nocount on insert into tbresenha values(" + processo + ","
        'inserir = inserir + vara + ",'" + dtaent + "','1753-01-01 00:00:00.000','"  
        'inserir = inserir + materia + "','" + arquivo + "','',0,'1753-01-01 00:00:00.000',0,'"
        'inserir = inserir + login + "','"+ hoje + "','1753-01-01 00:00:00.000')"
       
       
        'set objCmm1            = CreateObject("ADODB.Connection")
        'objCmm1.Open  Application("strConn")
        'set rs = objCmm1.Execute(inserir)
        'objCmm1.Close
        'set objCmm1 = nothing
End If
 
If UploadRequest.Item("Pesquisar").Item("Value") = "Pesquisar"  Then
        sql = "select numRes_NumProc, numRes_NumVar, dtmRes_DatRes, "
        sql = sql + "Convert(char(10), dtmRes_DatEnc,103) as 'dtmRes_DatEnc', vchRes_MatJur, vchRes_Anexo, chrRes_StaVis, numRes_EncAdv, "
        sql = sql + " Convert(char(10), dtmRes_Prz,103) as 'dtmRes_Prz', numRes_Aviso, vchRes_UsuCod, "
        sql = sql + "Convert(char(10), dtmRes_DatAtu,103) as 'dtmRes_DatAtu', Convert(char(10), dtmRes_DatVis,103) as 'dtmRes_DatVis', ResDestinacao from tbresenha ORDER BY dtmRes_DatRes desc "
 
        If UploadRequest.Item("materia").Item("Value")  = "TRABALHISTA"  Then
                sql = "select numRes_NumProc, numRes_NumVar, Convert(char(10), dtmRes_DatRes,103) as 'dtmRes_DatRes', "
                sql = sql + "Convert(char(10), dtmRes_DatEnc,103) as 'dtmRes_DatEnc', vchRes_MatJur, vchRes_Anexo, chrRes_StaVis, numRes_EncAdv, "
                sql = sql + " Convert(char(10), dtmRes_Prz,103) as 'dtmRes_Prz', numRes_Aviso, vchRes_UsuCod, "
                sql = sql + "Convert(char(10), dtmRes_DatAtu,103) as 'dtmRes_DatAtu',  Convert(char(10), dtmRes_DatVis,103) as 'dtmRes_DatVis', ResDestinacao from tbresenha"
                sql = sql + " Where vchRes_MatJur = 'TRABALHISTA'"
        End If
 
        If UploadRequest.Item("materia").Item("Value") = "CIVEL" Then
                sql = "select numRes_NumProc, numRes_NumVar, Convert(char(10), dtmRes_DatRes,103) as 'dtmRes_DatRes', "
                sql = sql + "Convert(char(10), dtmRes_DatEnc,103) as 'dtmRes_DatEnc', vchRes_MatJur, vchRes_Anexo, chrRes_StaVis, numRes_EncAdv, "
                sql = sql + " Convert(char(10), dtmRes_Prz,103) as 'dtmRes_Prz', numRes_Aviso, vchRes_UsuCod, "
                sql = sql + "Convert(char(10), dtmRes_DatAtu,103) as 'dtmRes_DatAtu',  Convert(char(10), dtmRes_DatVis,103) as 'dtmRes_DatVis', ResDestinacao from tbresenha"
                sql = sql + " Where vchRes_MatJur = 'CIVEL'"   
        End If
 
        If UploadRequest.Item("materia").Item("Value") = "OUTROS" Then
                sql = "select numRes_NumProc, numRes_NumVar, Convert(char(10), dtmRes_DatRes,103) as 'dtmRes_DatRes', "
                sql = sql + "Convert(char(10), dtmRes_DatEnc,103) as 'dtmRes_DatEnc', vchRes_MatJur, vchRes_Anexo, chrRes_StaVis, numRes_EncAdv, "
                sql = sql + " Convert(char(10), dtmRes_Prz,103) as 'dtmRes_Prz', numRes_Aviso, vchRes_UsuCod, "
                sql = sql + "Convert(char(10), dtmRes_DatAtu,103) as 'dtmRes_DatAtu',  Convert(char(10), dtmRes_DatVis,103) as 'dtmRes_DatVis', ResDestinacao from tbresenha"
                sql = sql + " Where vchRes_MatJur = 'OUTROS'"   
        End If
       
        If UploadRequest.Item("destinacao").Item("Value") = "CACON" Then
                sql = "select numRes_NumProc, numRes_NumVar, Convert(char(10), dtmRes_DatRes,103) as 'dtmRes_DatRes', "
                sql = sql + "Convert(char(10), dtmRes_DatEnc,103) as 'dtmRes_DatEnc', vchRes_MatJur, vchRes_Anexo, chrRes_StaVis, numRes_EncAdv, "
                sql = sql + " Convert(char(10), dtmRes_Prz,103) as 'dtmRes_Prz', numRes_Aviso, vchRes_UsuCod, "
                sql = sql + "Convert(char(10), dtmRes_DatAtu,103) as 'dtmRes_DatAtu',  Convert(char(10), dtmRes_DatVis,103) as 'dtmRes_DatVis', ResDestinacao from tbresenha"
                sql = sql + " Where ResDestinacao = 'CACON'"   
        End If         
       
        If UploadRequest.Item("destinacao").Item("Value") = "CAGER" Then
                sql = "select numRes_NumProc, numRes_NumVar, Convert(char(10), dtmRes_DatRes,103) as 'dtmRes_DatRes', "
                sql = sql + "Convert(char(10), dtmRes_DatEnc,103) as 'dtmRes_DatEnc', vchRes_MatJur, vchRes_Anexo, chrRes_StaVis, numRes_EncAdv, "
                sql = sql + " Convert(char(10), dtmRes_Prz,103) as 'dtmRes_Prz', numRes_Aviso, vchRes_UsuCod, "
                sql = sql + "Convert(char(10), dtmRes_DatAtu,103) as 'dtmRes_DatAtu',  Convert(char(10), dtmRes_DatVis,103) as 'dtmRes_DatVis', ResDestinacao from tbresenha"
                sql = sql + " Where ResDestinacao = 'CAGER'"   
        End If         
 
        If UploadRequest.Item("dtaent").Item("Value")  <> "" Then
           data = UploadRequest.Item("dtaent").Item("Value")
           ano = cstr(year(data))
           mes = mid(cstr(100 + month(data)),2,2)
           dia = mid(cstr(100 + day(data)),2,2)
           sql = sql + " and dtmRes_DatRes = '" + ano + "-" + mes + "-" + dia + "'"
        End If
 
        If UploadRequest.Item("procno").Item("Value") <> "" Then
           sql = sql + " and numRes_NumProc = " + UploadRequest.Item("procno").Item("Value")
        End If
        If  UploadRequest.Item("varano").Item("Value") <> "" Then
           sql = sql + " and numRes_NumVar = " +  UploadRequest.Item("varano").Item("Value")
        End If  
        set objCmm2 = CreateObject("ADODB.Connection")
        set sqlC = server.CreateObject("ADODB.Recordset")
        objCmm2.Open  Application("strConn")
        SET sqlC = objCmm2.Execute (sql)  
 End If 
 
 
If UploadRequest.Item("Excluir").Item("Value") = "Excluir" Then
        chave1 = UploadRequest.Item("chave1").Item("Value")
        ano = cstr(year(chave1))
        mes = mid(chave1,4,2)
        dia = mid(chave1,1,2)     
        chave1 = ano + "-" + mes + "-" + dia
        chave2 = UploadRequest.Item("chave2").Item("Value")
        chave3 = UploadRequest.Item("chave3").Item("Value")
        'chave2 = request("chave2")
        'chave3 = request("chave3")
        excluir = "Set nocount on delete from tbresenha Where numRes_NumProc = '" + chave2 + "' and numRes_NumVar = " + chave3
        excluir = excluir + " and dtmRes_DatRes = '" + Chave1 + "'"
       
        set objCmm1          = CreateObject("ADODB.Connection")
        objCmm1.Open  Application("strConn")
        set rs = objCmm1.Execute(excluir)
        objCmm1.Close
        set objCmm1 = nothing
 
       
        If chave2 <> "" Then
                Response.Write("<script language='JavaScript'>alert('" &  "Registro excluído com sucesso" & "');</script>")
        End If         
End If
 
Set objScap1 = Server.CreateObject("SCAP1.clsSisLock")
objScap1.UsuarioLogin = Session("Login")
 
   
wResultAtual = objScap1.Mensagem
 
     
If wResultAtual <> vbNullString  Then
        Response.Status = "401 Acesso Negado"
        Response.Write wResultAtual
        Response.End
End if
 
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, retire o On Error Resume Next de seu código.

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.