Fórum Imprimir guias de impostos estaduais como ICMS e IPI #477374

28/04/2014

0

Bom dia pessoal,

Estou em um projeto, onde me solicitaram para gerar e imprimir guias de impostos, porém nunca trabalhei nesta área e não tenho ideia de como fazer isso.
Alguém já passou por situação semelhante? Poderia me ajudar.

Abraços,
Erick Menezes

Erick Menezes

Responder

Posts

30/04/2014

Erick Menezes

Olá pessoal depois de pesquisar muito sobre formas de fazer a emissão de guias, evolui para um robo utilizando JWebUnit, porém ainda resta gerar e salvar a guia após clicar no link. Alguém aqui tem alguma experiencia com isso que possa me ajudar?

Abraços,

Abaixo segue o código:

import static net.sourceforge.jwebunit.junit.JWebUnit.*;

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;

import org.junit.Before;
import org.junit.Test;

public class TestSEFAZMG {
	
	private String url;
	private String imageFileName = "/arrecadacao/images/bt_confirmar.png";
	private DateFormat sdf = new SimpleDateFormat("dd/MM/yyyy"); 
	
	//@Before // descomente a tag para rodar a classe como JUnit test
	public void prepare() throws Exception{
		url = "https://www2.fazenda.mg.gov.br/arrecadacao/ctrl/ARRECADA/ARRECADA/DOCUMENTO_ARRECADACAO?ACAO=VISUALIZAR";
		setBaseUrl(url);
	}
	
	//@Test // descomente a tag para rodar a classe como JUnit test
	public void test(){
		beginAt(url);
		setScriptingEnabled(true);
		assertLinkPresentWithImage(imageFileName); 				//Confirma acesso a página
		setWorkingForm("formTela"); 							//Seta formulario
		selectOptionByValue("cmbICMS", "1"); 					//Seta valor no campo
		clickLinkWithImage(imageFileName); 						//Clica no link Confirmar
		imageFileName = "/arrecadacao/images/bt_pesquisar.png"; //Ajusta imagem do link
		assertLinkPresentWithImage(imageFileName);  			//Confirma acesso a página
		setTextField("txtIdentificacao", "002196371.06-49"); 	//Seta valor do campo
		clickLinkWithImage(imageFileName); 						//Clica no link Pesquisar
		assertTextFieldEquals("txtNome", "AMBEV S.A."); 		//Verifica valor do texto
		selectOptionByValue("cmbUF", "14");						//Seta valor do combo da UF
		selectOptionByValue("cmbICMS", "1"); 					//Seta valor no campo
		selectOptionByValue("cmbReceita", "111"); 				//Seta valor no campo
		String dv = "04/04/2014";
		setTextField("dtVencimento", dv); 						//Seta valor do campo
		Calendar date = Calendar.getInstance();
		String dp = sdf.format(date.getTime());
		setTextField("dtPagamento", dp); 						//Seta valor do campo
		selectOptionByValue("cmbPeriodo", "1"); 				//Seta valor no campo
		//Integer mes = date.MONTH;
		selectOptionByValue("cmbMes", "3"); 					//Seta valor no campo
		//Integer ano = date.YEAR;
		selectOptionByValue("cmbAno", "2014");					//Seta valor no campo
		setTextField("txtReceita", "900.000,00"); 				//Seta valor do campo
		if (dv == dp){
			imageFileName = "/arrecadacao/images/bt_calcular.png";
			clickLinkWithImage(imageFileName); 					//Clica no link Calcular	
		}		
		imageFileName = "/arrecadacao/images/bt_gerar_dae.png"; //Ajusta imagem para botao gerar dae
		clickLinkWithImage(imageFileName); 						//Clica no link Gerar DAE
		imageFileName = "/arrecadacao/images/emitir_dae.gif";	//Ajusta imagem para botao emitir dae
		assertLinkPresentWithImage(imageFileName); 				//Confirma acesso a página
		clickLinkWithImage(imageFileName); 						//Clica no link Emitir DAE
		getResponseHeaders();
		/*System.out.println("###############################################################################");
		System.out.println("teste");
		System.out.println("###############################################################################"); */
		getServerResponse();
		
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public DateFormat getSdf() {
		return sdf;
	}

	public void setSdf(DateFormat sdf) {
		this.sdf = sdf;
	}
}
Responder

Gostei + 0

06/05/2014

Erick Menezes

Olá pessoal,

Consegui evoluir com o meu problema e vou postar aqui caso algum dia alguém precise de algo parecido.
O meu problema inicial era navegar no site e gerar guia de dae ("ICMS"), a parte de navegar pelo site rolou belezinha com o código que postei anteriormente, faltou a parte da emissão de guias que estou postando agora.

Criei a classe RecuperaFile
package jwebUnit;

import java.io.File;


public class RecuperaFile {

	private String input;
	private String fileName;
	private File file;
	
	public File getFile(String responseServer) throws Exception{
		input = responseServer;
		fileName = input.substring(input.indexOf("ARRECADACAO"), input.indexOf(".pdf"));
		file = File.createTempFile(fileName, ".pdf", new File("c:/software"));
		return file;
	}
}


e acrescentei ao final da classe anterior o as linhas:
                RecuperaFile rf = new RecuperaFile();
		saveAs(rs.getFile(getServerResponse()));


e pronto, arquivo gerado com sucesso.

Abraços
Responder

Gostei + 0

06/05/2014

Carlos Proença

Opa Eric blz:??

hehehe nem vi... seu post... mals rs

esse dai eu nunca tinha visto n... eu iria indicar vc usar o Selenium... pra fazer esses testes....

mas tb n entendi muito bem.... vc queria imprimir... umas informações tiradas do site:? ou só navegar nele?

mas hehe se vc ja resolveu ... parabeins e obrigado pela contribuição...

att.

Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar