|
WX - Importando Html para Hyperfile |
Iniciado por adrianoboller, 20,jun. 2015 19:22 - 10 respuestas |
| |
| | | |
|
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:22 |
Procedure A_Processar()
PROGBAR_01..Value = 0
ok is boolean = False
GloUltimaPosicao = 0 DespesasDedutiveis = 0 DespesasNaoDedutiveis = 0 TotalDespesas = 0 TotalReceita = 0 Resultado = 0 Receita = 0 Despesa = 0 DataLivroDiario = "" Usuario = "" Cartorio = "" Dia = "" Mes = "" Ano = "" Competencia = "" Qtd = "" Conta = "" AtoHistorico = ""
IF gsHtmlAnalisado <> ""
Usuario = Busca_NomeUsuario(gsHtmlAnalisado) PROGBAR_01 += 10
Cartorio = Busca_NomeCartorio(gsHtmlAnalisado) PROGBAR_01 += 10
DataLivroDiario = DateSys() PROGBAR_01 += 10
ok = Busca_RecortaBlocoSaldos(gsHtmlAnalisado) PROGBAR_01 += 10
ok = Busca_MioloHtml(gsHtmlAnalisado)
PROGBAR_01 += 10
ok = Busca_Registros(gsHtmlAnalisado)
END
PROGBAR_01 = 100
IF HRecNum(Planilha) > 0 Info("Arquivo Html convertido para Excel com sucesso!")
TableDisplay(TABLE_QRY_Select_HtmlToExcel,taReExecuteQuery)
TableDisplay(TABLE_QRY_Select_HtmlToExcel,taInit) ELSE Info("Ocorreu um ero ao tentar importar os dados."+ErrorInfo()) END |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:23 |
Procedure Busca_Campos(gRegistro)
gRegistro = NoSpace(gRegistro) gRegistro = Replace(gRegistro," ","") gRegistro = Replace(gRegistro,Charact(009),"")
IF CBOX_Debug..Value = True THEN fSaveText("c:\registro.txt",gRegistro) END
ok is boolean = False
Campo_MesAno is string = ""
nPosicaoInicial is int = PositionOccurrence(gRegistro,"<td class=c>",firstRank,IgnoreCase) + Length("<td class=c>")
nPosicaoFinal is int = Proximo_Caracter(gRegistro, "</td>", nPosicaoInicial)
Campo_MesAno = Middle(gRegistro,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
Mes = Middle(Campo_MesAno,1,2)
Ano = Middle(Campo_MesAno,4,4)
Competencia = Campo_MesAno
nPosicaoInicial = PositionOccurrence(gRegistro,"<td class=c>",nextRank,IgnoreCase) + Length("<td class=c>")
nPosicaoFinal = Proximo_Caracter(gRegistro, "</td>", nPosicaoInicial)
Dia = Middle(gRegistro,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
nPosicaoInicial = PositionOccurrence(gRegistro,"<td class=c>",nextRank,IgnoreCase) + Length("<td class=c>")
nPosicaoFinal = Proximo_Caracter(gRegistro, "</td>", nPosicaoInicial)
Qtd = Middle(gRegistro,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
nPosicaoInicial = PositionOccurrence(gRegistro,"<td>",firstRank,IgnoreCase) + Length("<td>")
nPosicaoFinal = Proximo_Caracter(gRegistro, "</td>", nPosicaoInicial)
Conta = Middle(gRegistro,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
nPosicaoInicial = PositionOccurrence(gRegistro,"<td>",nextRank,IgnoreCase) + Length("<td>")
nPosicaoFinal = Proximo_Caracter(gRegistro, "</td>", nPosicaoInicial)
AtoHistorico = Middle(gRegistro,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
gRegistroValores is string = Middle(gRegistro,nPosicaoFinal,Length(gRegistro))
nPosicaoInicial = PositionOccurrence(gRegistroValores,"<td class=r>",firstRank,IgnoreCase) + Length("<td class=r>")
nPosicaoFinal = Proximo_Caracter(gRegistroValores, "</td>", nPosicaoInicial)
sReceitaRetorno is string = NoSpace(Middle(gRegistroValores,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial)))
Receita = Val(sReceitaRetorno)
nPosicaoInicial = PositionOccurrence(gRegistroValores,"<td class=r>",nextRank,IgnoreCase) + Length("<td class=r>")
nPosicaoFinal = Proximo_Caracter(gRegistroValores, "</td>", nPosicaoInicial)
sDespesaRetorno is string = NoSpace(Middle(gRegistroValores,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial)))
Despesa = Val(sDespesaRetorno)
IF Dia <> "" AND Mes <> "" AND Ano <> "" AND Competencia <> "" THEN
ok = HExecuteQuery(QRY_Insert_HtmlToExcel,hQueryDefault,DataLivroDiario,Usuario,Cartorio,Mes,Ano,Competencia,Dia,Qtd,Conta,AtoHistorico,Receita,Despesa,DespesasDedutiveis,DespesasNaoDedutiveis,TotalDespesas,TotalReceita,Resultado)
Dia = "" Mes = "" Ano = "" Competencia = "" Qtd = "" Conta = "" AtoHistorico = "" Receita = "" Despesa = ""
END
RESULT(ok) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:23 |
Procedure Busca_MioloHtml(HtmlAnalisado)
ok is boolean = False
sBloco is string = ""
sBloco = Replace(HtmlAnalisado,Charact(34),"")
nPosicaoInicial is int = 0 nPosicaoInicial = PositionOccurrence(sBloco,"<table id=solicitacoes class=livro_protocolo summary=Protocolo>",firstRank,IgnoreCase)
nPosicaoFinal is int = 0 nPosicaoFinal = Proximo_Caracter(sBloco,"</table",nPosicaoInicial) + Length("</table")
sBloco = Middle(sBloco,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
IF sBloco <> "" ok = True gsHtmlAnalisado = sBloco ELSE ok = False gsHtmlAnalisado = "" END
RESULT(ok) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:23 |
Procedure Busca_NomeCartorio(HtmlAnalisado)
NomeCartorio is string = ""
nPosicaoInicial is int = PositionOccurrence(HtmlAnalisado,"Cartorio: <b>",firstRank,IgnoreCase) + Length("Cartorio: <b>")
nPosicaoFinal is int = Proximo_Caracter(HtmlAnalisado, "</b>", nPosicaoInicial)
NomeCartorio = Middle(HtmlAnalisado,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
RESULT(NomeCartorio) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:24 |
Procedure Busca_NomeUsuario(HtmlAnalisado)
NomeUsuario is string = ""
nPosicaoInicial is int = PositionOccurrence(HtmlAnalisado,"Usuario: <b>",firstRank,IgnoreCase) + Length("Usuario: <b>")
nPosicaoFinal is int = Proximo_Caracter(HtmlAnalisado, "</b>", nPosicaoInicial)
NomeUsuario = Middle(HtmlAnalisado,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
RESULT(NomeUsuario) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:24 |
Procedure Busca_RecortaBlocoSaldos(HtmlAnalisado)
ok is boolean = False
sBloco is string = ""
nPosicaoInicial is int = 0 nPosicaoInicial = PositionOccurrence(HtmlAnalisado,"<th>Despesas Dedutiveis</th>",firstRank,IgnoreCase)
nPosicaoFinal is int = 0 nPosicaoFinal = Proximo_Caracter(HtmlAnalisado,"</tr>",nPosicaoInicial) + 5 nPosicaoFinal = Proximo_Caracter(HtmlAnalisado,"</tr>",nPosicaoFinal) + 5
sBloco = Middle(HtmlAnalisado,nPosicaoInicial, (nPosicaoFinal - nPosicaoInicial))
Busca_RecortaValorSaldos(sBloco)
IF Resultado > 0 OR TotalReceita > 0 ok = True ELSE ok = False END
RESULT(ok) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:24 |
Procedure Busca_RecortaValorSaldos(gBloco)
ok is boolean = False
gBloco = Replace(gBloco,".","")
gBloco = Replace(gBloco,",",".")
nDespesas_Dedutiveis_ini is int = Proximo_Caracter(gBloco,"<td class=c>",1) + Length("<td class=c>") nDespesas_Dedutiveis_fim is int = Proximo_Caracter(gBloco,"</td>",nDespesas_Dedutiveis_ini)
nDespesas_nao_Dedutiveis_ini is int = Proximo_Caracter(gBloco,"<td class=c>",nDespesas_Dedutiveis_fim) + Length("<td class=c>") nDespesas_nao_Dedutiveis_fim is int = Proximo_Caracter(gBloco,"</td>",nDespesas_nao_Dedutiveis_ini)
nTotal_de_Despesas_ini is int = Proximo_Caracter(gBloco,"<td class=c>",nDespesas_nao_Dedutiveis_fim) + Length("<td class=c>") nTotal_de_Despesas_fim is int = Proximo_Caracter(gBloco,"</td>",nTotal_de_Despesas_ini)
nTotal_de_Receitas_ini is int = Proximo_Caracter(gBloco,"<td class=c>",nTotal_de_Despesas_fim) + Length("<td class=c>") nTotal_de_Receitas_fim is int = Proximo_Caracter(gBloco,"</td>",nTotal_de_Receitas_ini)
nResultado_ini is int = Proximo_Caracter(gBloco,"<td class=c>",nTotal_de_Receitas_fim) + Length("<td class=c>") nResultado_fim is int = Proximo_Caracter(gBloco,"</td>",nResultado_ini)
DespesasDedutiveis = Middle(gBloco,nDespesas_Dedutiveis_ini,nDespesas_Dedutiveis_fim-nDespesas_Dedutiveis_ini) DespesasNaoDedutiveis = Middle(gBloco,nDespesas_nao_Dedutiveis_ini,nDespesas_nao_Dedutiveis_fim-nDespesas_nao_Dedutiveis_ini) TotalDespesas = Middle(gBloco,nTotal_de_Despesas_ini,nTotal_de_Despesas_fim-nTotal_de_Despesas_ini) TotalReceita = Middle(gBloco,nTotal_de_Receitas_ini,nTotal_de_Receitas_fim-nTotal_de_Receitas_ini) Resultado = Middle(gBloco,nResultado_ini,nResultado_fim-nResultado_ini)
RESULT(ok) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:25 |
Procedure Busca_Registros(gBlocoHtml)
ok is boolean = False
Contador, nTotal, nPosicao, nOcorrenciaInicial, nOcorrenciaFinal is int = 0
sRegistro is string = ""
HourGlass(True)
IF gBlocoHtml <> "" THEN
gBlocoHtml = Replace(gBlocoHtml," "," ") gBlocoHtml = Replace(gBlocoHtml,Charact(13)+Charact(10),"") gBlocoHtml = Replace(gBlocoHtml,Charact(9),"") gBlocoHtml = Replace(gBlocoHtml,".","") gBlocoHtml = Replace(gBlocoHtml,",",".")
nTotal = Length(gBlocoHtml)
LOOP (nTotal)
PROGBAR_01 += 1
nPosicao += 1
nOcorrenciaInicial = Proximo_Caracter(gBlocoHtml,"<tr>",nPosicao) + 4
nOcorrenciaFinal = Proximo_Caracter(gBlocoHtml,"</tr>",nPosicao)
IF nOcorrenciaInicial > 0 AND nOcorrenciaFinal > 0 AND nOcorrenciaFinal > nOcorrenciaInicial THEN
Contador += 1
IF Contador > 2
sRegistro = Middle(gBlocoHtml,nOcorrenciaInicial,nOcorrenciaFinal - nOcorrenciaInicial)
ok = Busca_Campos(sRegistro)
IF CBOX_Debug..Value = True Info(ok,sRegistro) END
IF nPosicao > nTotal BREAK END
END
nPosicao = nOcorrenciaFinal
IF nPosicao > nTotal BREAK END
END
IF nPosicao > nTotal BREAK END
END
ELSE Info("Tabela inexistente!") END
HourGlass(False)
RESULT(ok) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:25 |
Procedure PathExcel()
Local_Excel is string = INIRead("Path","Excel","",fExeDir+"\Config.ini")
IF fFileExist(Local_Excel) = True
EDT_Path_Excel = Local_Excel
ELSE
Info("Localize o arquivo EXCEL.EXE em seu computador e informe o caminho ocmpleto no campo: Path do Excel desta tela.")
END
|
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:25 |
Procedure Proximo_Caracter(HtmlAnalisado, Caracter, PosicaoInicial)
Tamanho is int = Length(HtmlAnalisado) Posicao is int = 0 PosicaoProximoCaracter is int = 0
LOOP (Tamanho)
Posicao += 1
IF PosicaoInicial <= Posicao
IF Caracter = Middle(HtmlAnalisado,Posicao, Length(Caracter)) THEN
PosicaoProximoCaracter = Posicao BREAK END
END
END
RESULT(PosicaoProximoCaracter) |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.661 mensajes Popularité : +175 (223 votes) |
|
Publicado el 20,junio 2015 - 19:26 |
Procedure Remove_Acento( Texto )
Texto = NoAccent(Texto)
Texto = Replace(Texto,"xE1","a") Texto = Replace(Texto,"xE3","a") Texto = Replace(Texto,"xEA","e") Texto = Replace(Texto,"xE9","e") Texto = Replace(Texto,"xED","i") Texto = Replace(Texto,"xF3","o") Texto = Replace(Texto,"xF4","o") Texto = Replace(Texto,"xFA","u") Texto = Replace(Texto,"xE7","c") Texto = Replace(Texto,"xC1","A") Texto = Replace(Texto,"xCD","I") Texto = Replace(Texto,"r$"," R$ ")
Texto = Replace(Texto,Charact(34),"")
ChangeCharset(charsetOccidental)
Texto=Replace(Texto,"A£","a") Texto=Replace(Texto,"ã","a") Texto=Replace(Texto,"£","") Texto=Replace(Texto,"á","a") Texto=Replace(Texto,"é","e") Texto=Replace(Texto,"Ã","i") Texto=Replace(Texto,"ó","o") Texto=Replace(Texto,"ú","u") Texto=Replace(Texto,"Ã","A") Texto=Replace(Texto,"A","A") Texto=Replace(Texto,"É","E") Texto=Replace(Texto,"Ã","I") Texto=Replace(Texto,"Ó","O") Texto=Replace(Texto,"Ú","U")
Texto=Replace(Texto,"Â","A") Texto=Replace(Texto,"Ô","O") Texto=Replace(Texto,"A•","O") Texto=Replace(Texto,"Õ","O") Texto=Replace(Texto,"¡","") Texto=Replace(Texto,"â","a") Texto=Replace(Texto,"¢","") Texto=Replace(Texto,"õ","o") Texto=Replace(Texto,"µ","O") Texto=Replace(Texto,"Áº","u") Texto=Replace(Texto,"Aº","u") Texto=Replace(Texto,"º","u") Texto=Replace(Texto,"Ã","A") Texto=Replace(Texto,"ƒ","") Texto=Replace(Texto,"Ê","E") Texto=Replace(Texto,"©","") Texto=Replace(Texto,"ê","e") Texto=Replace(Texto,"ª","") Texto=Replace(Texto,"ô","o") Texto=Replace(Texto,"´","") Texto=Replace(Texto,"Aµ","O") Texto=Replace(Texto,"µ","") Texto=Replace(Texto,"ó","O") Texto=Replace(Texto,"³","") Texto=Replace(Texto,"A“","O") Texto=Replace(Texto,"“","") Texto=Replace(Texto,"Aº","U") Texto=Replace(Texto,"º","") Texto=Replace(Texto,"ç","c") Texto=Replace(Texto,"§","") Texto=Replace(Texto,"Ç","C") Texto=Replace(Texto,"‡","") Texto=Replace(Texto,"ãO","AO") Texto=Replace(Texto,"£","") Texto=Replace(Texto,"É","E") Texto=Replace(Texto,"‰","") Texto=Replace(Texto,"Ã%","E") Texto=Replace(Texto,"A£","a") Texto=Replace(Texto,"£","") Texto=Replace(Texto,"","") Texto=Replace(Texto,"¡","") Texto=Replace(Texto,"¢","") Texto=Replace(Texto,"~a","a") Texto=Replace(Texto,"ã","a") Texto=Replace(Texto,"á","a") Texto=Replace(Texto,"à","a") Texto=Replace(Texto,"â","a") Texto=Replace(Texto,"ä","a")
Texto=Replace(Texto,"~e","e") Texto=Replace(Texto,"é","e") Texto=Replace(Texto,"è","e") Texto=Replace(Texto,"ê","e") Texto=Replace(Texto,"ë","e")
Texto=Replace(Texto,"~i","i") Texto=Replace(Texto,"í","i") Texto=Replace(Texto,"ì","i") Texto=Replace(Texto,"î","i") Texto=Replace(Texto,"ï","i")
Texto=Replace(Texto,"~o","o") Texto=Replace(Texto,"õ","o") Texto=Replace(Texto,"ó","o") Texto=Replace(Texto,"ò","o") Texto=Replace(Texto,"ô","o") Texto=Replace(Texto,"ö","o")
Texto=Replace(Texto,"~u","u") Texto=Replace(Texto,"ú","u") Texto=Replace(Texto,"ù","u") Texto=Replace(Texto,"û","u") Texto=Replace(Texto,"ü","u")
Texto=Replace(Texto,"ç","c") Texto=Replace(Texto,"Ç","C")
Texto=Replace(Texto,"~A","A") Texto=Replace(Texto,"Ã","A") Texto=Replace(Texto,"Á","A") Texto=Replace(Texto,"À","A") Texto=Replace(Texto,"Â","A") Texto=Replace(Texto,"Ä","A")
Texto=Replace(Texto,"~E","E") Texto=Replace(Texto,"É","E") Texto=Replace(Texto,"È","E") Texto=Replace(Texto,"Ê","E") Texto=Replace(Texto,"Ë","E")
Texto=Replace(Texto,"~I","I") Texto=Replace(Texto,"Í","I") Texto=Replace(Texto,"Ì","I") Texto=Replace(Texto,"Î","I") Texto=Replace(Texto,"Ï","I")
Texto=Replace(Texto,"~O","O")
Texto=Replace(Texto,"Õ","O") Texto=Replace(Texto,"Ó","O") Texto=Replace(Texto,"Ò","O") Texto=Replace(Texto,"Ô","O") Texto=Replace(Texto,"Ö","O")
Texto=Replace(Texto,"~U","U") Texto=Replace(Texto,"Ú","U") Texto=Replace(Texto,"Ù","U") Texto=Replace(Texto,"Û","U") Texto=Replace(Texto,"Ü","U")
RESULT(Texto |
| |
| |
| | | |
|
| | | | |
| | |
|