Produto:

TOTVS Automação Fiscal

Versões:

12.1.17+

Este documento tem o objetivo de fornecer informações para utilização do Web Service REST, para SETUP automático do TOTVS Automação Fiscal.

Para mais detalhes sobre o conceito de um serviços REST clique aqui.

Para mais detalhes sobre serviços REST na arquitetura Protheus clique aqui.


Definição do Serviço

Nome: TAFSETUP

Objetivo: Enviar ao TAF as informações necessários para o SETUP do ambiente de forma a configurar o ambiente automaticamente e deixá-lo totalmente operacional.

Métodos: POST


Configurações do Serviço

A  Configuração do serviço REST está documentada  no link Configuração REST SERVER - Protheus.

Estas parametrizações estão localizadas fisicamente no arquivo appserver.ini da pasta de instalação "[...]\BIN\APP"

Importante

Na seção HTTPURI, a chave PrepareIn deve ser comentada.

Segue exemplo de configuração do WS REST para utilização no modulo TAF:

[HTTPV11]
SOCKETS=HTTPREST
ENABLE=1

[HTTPREST]
Port=8080
URIs=HTTPURI
Security=0

[HTTPURI]
URL=/rest
Instances=1,1
CORSEnable=1
AllowOrigin=*

[HTTPJOB]
MAIN=HTTP_START
ENVIRONMENT=P12

[TAF_CFGJOB]
Main=TAF_CFGJOB
Instances=1,1 **
PrepareIn=T1 *
nRefreshRate=50
ENVIRONMENT=P12


[OnStart]
JOBS=HTTPJOB,TAF_CFGJOB
RefreshRate=120


*A chave PrepareIn deve conter o código do Grupo de Empresas(sigamat.emp/syscompany) utilizado no modulo TAF, abaixo exemplos configurações possíveis para as mesmas:

** A chave Instances na seção TAF_CFGJOB é opcional, se a mesma não existir o sistema ira considerar a quantidade de threads declarada na chave instances da seção HTTPURI.

Obs: O servidor cria Threads especificas para cada grupo de empresas de acordo com a configuração da chave Instances, por isso essa configuração deve ser realizada considerando a capacidade computacional do servidor.


Fonte: REST com ERP Microsiga Protheus




Definição dos métodos

POST

Descrição do Método: O método POST segue o conceito do próprio método em qualquer outro tipo de serviço REST, devendo seu conteúdo ser enviado no corpo da mensagem (body) no formato json.

O objetivo do método é enviar informações que devem ser gravadas nos controles do TAF, permitindo que os dados sejam usados para concluir a configuração do ambiente.

Estrutura da mensagem enviada no POST (Request):
{"empresas": [
		{
			"CODEMPRESA": "",- Código único da empresa, character(4)
			"CODFILIAL": "",	- Código único da filial, Character(5)
			"M0_FILIAL": "",	- Descrição da Filial, Character(41)
			"M0_NOME": "",		- Nome da Empresa, Character(40)
			"M0_NOMECOM": "",	- Razao Social Empresa, Character(60)
			"M0_ENDCOB": "",	- Endereço Cobrança, Character(60)
			"M0_CIDCOB": "",	- Cidade Cobrança, Character(60)
			"M0_ESTCOB": "",	- Estado Cobrança, Character(2)
			"M0_CEPCOB": "",	- CEP Cobrança, Character(8)
			"M0_BAIRCOB": "",	- Bairro Cobrança, Character(35)
			"M0_COMPCOB": "",	- Complemento Cobrança, Character(25)
			"M0_CODMUN": "",	- Codigo Municipio, Character(7)
			"M0_ENDENT": "",	- Endereço Entrega, Character(60)
			"M0_CIDENT": "",	- Cidade Entrega, Character(60)
			"M0_ESTENT": "",	- Estado Entrega, Character(2)
			"M0_CEPENT": "",	- CEP Entrega, Character(8)
			"M0_BAIRENT": "",	- Bairro Entrega, Character(35)
			"M0_COMPENT": "",	- Complemento Entrega, Character(25)
			"M0_TPINSC": "",	- Tipo de Inscrição, Integer(1), 1-CEI, 2-CNPJ, 3-CPF, 4-INCRA
			"M0_CGC": "",		- Numero da  Inscrição acima, Character(14)
			"M0_INSC": "",		- Numero Inscrição Estadual, Character(14)	
			"M0_TEL": "",		- Telefone, Character(14)
			"M0_FAX": "",		- FAX, Character(14)
			"M0_PRODRUR": "",	- Produtor Rural, Character(1), 1-Fisica, 2-Juridica, 3-Segurado Especial
			"M0_CNAE": "",		- Codigo de atividade, Character(7)
			"M0_FPAS": "",		- Código FPAS, Character(4)
			"M0_NATJUR": "",	- Natureza Juridica, Character(4)
			"M0_NIRE": "",		- Numero NIRE(Nr. Identificacao do Registro da Empresa), Character(25)
			"M0_DTRE": "",		- Data NIRE(Inscricao na Junta Comercial), Character(8), AAAAMMDD
			"M0_INS_SUF": "", 	- Numero Inscrição SUFRAMA, Character(12)
			"M0_CEI": "",		- Numer CEI, Character(12)
			
			"C1E_CODFIL": "",
			"C1E_MATRIZ": "true/false",			
			"C1E_DTINI": "",	- PerÝodo Inicial Validade, Character(8), AAAAMMDD
			"C1E_DESFOL": "",	- Indic. DesoneraþÒo Folha, Character(1), 0=Nao Aplicavel;1=Empresa enquadrada nos art. 7. a 9. da Lei 12.546/2011
			"C1E_REGELT": "",	- Registro Eletronico, Character(1), 0=Nao optou pelo registro eletronico de empregados;1=Optou pelo registro eletronico de empregados
			"C1E_SEGMEN": "",	- Segmento de Atividade, Character(1), 1=Instituiþ§es Financeiras - Bancos;2=ËrgÒos P·blicos;3=Portos - CODESP;4=ConstruþÒo Civil - Empreiteiras
			"C1E_ENTEDU": "",	- Ind. Entidade Educativa, Character(1), 0=NÒo Ú entidade educativa sem fins lucrativos;1=╔ entidade educativa sem fins lucrativos
			"C1E_INDETT": "",	- Indic Empresa Trab. Temp., Character(1), 1=Sim;2=NÒo
			"C1E_NRETT": "",	- N·m Reg. Emp. Trab. Tempo, Character(30)
			"C1E_SIGMIN": "",	- Ident Min/Lei Conc Certif, Character(70)
			"C1E_NRCERT": "",	- N·mero do Certificado, Character(40)
			"C1E_DTEMCE": "",	- Data emissÒo certificado, Character(8), AAAAMMDD
			"C1E_DTVCCE": "",	- Data Vencimento Certif., Character(8), AAAAMMDD
			"C1E_NRPRRE": "",	- N·mero Protoc. RenovaþÒo, Character(40)
			"C1E_DTPRRE": "",	- Data Protocolo RenovaþÒo, Character(8), AAAAMMDD
			"C1E_DTDOU": "",	- Dt.PublicaþÒo DOU, Character(8), AAAAMMDD
			"C1E_PAGDOU": "",	- N·mero da Pßgina do DOU, Character(5)
			"C1E_SIAFI": "", 	- N·mero do SIAFI, Character(6)
			"C1E_UF": "", 		- UF do Ente Federativo, Character(2)
			"C1E_CODMUN": "", 	- C¾digo do MunicÝpio, Character(6)
			"C1E_RPPS": "", 	- Regime Prop. Prev. Social, Character(1), 1=Sim;2=NÒo
			"C1E_EFR": "", 		- ËrgÒo P·blico Ú o EFR, Character(1), 1=Sim;2=NÒo
			"C1E_CPNJER": "", 	- CNPJ Ente Federativo Resp, Character(14)
			"C1E_NMENTE": "", 	- Nome do Ente Federativo, Character(115)
			"C1E_SUBTET": "", 	- Subteto, Character(1), 1=Executivo;2=Judicißrio;3=Legislativo;9=Todos os poderes
			"C1E_VLRSUB": "", 	- Valor Subteto Ente Federa, Decimal(14,2)
			"C1E_SITESP": "", 	- SituaþÒo Pessoa JurÝdica, Character(1),0=SituaþÒo Normal;1=ExtinþÒo;2=FusÒo;3=CisÒo;4=IncorporaþÒo.
			"C1E_SITPF": "", 	- SituaþÒo Pessoa FÝsica, Character(1),0=SituaþÒo Normal;1=Encerramento de esp¾lio;2=SaÝda do paÝs em carßter permanente
			"C1E_CNPJTR":"", 	- CNPJ do Transmissor (Outorga), Character(14)
			
			"dataInicioeSocial": "AAAAMMDD",
			certificado[
				{"arquivo": "String"},
				{"senha": "String"}
				}
			]	
		}
	],
	"schedule": [
		{"scheduleIntegração": "1-Sim/2-Nao"},
		{"scheduleValidação": "1-Sim/2-Nao"},
		{"scheduleTransmissão": "1-Sim/2-Nao"}
	],
	"usuarios": [
		{"email": ""},
		{"email": ""},
		{"email": ""}
	],
	tabelasCompartilhadas:["empregador","estabelecimento","rubricas","turno","lotacao","cargos","carreira","funcoes","horarios","ambiente","processos","operadores","trabalhadores"],
	"versaoVigenteeSocial": "AAAAMMDD"		
}



{{ "empresas" : { "CODEMPRESA":"", 
		  "CODFILIAL":"", 
		  "STATUS":"",    
		   "log":
			{"Rotina":"",
			"Mensagem":"",
			"TimeStamp":""
			},
		   "TimeStamp":"" 

}		  
,
"usuarios":[
			     "usuario":"","senha": "",
			     "usuario":"","senha": "",
			     "usuario":"","senha": ""] 
			      
}