
luizcnr
-
Total de ítens
48 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por luizcnr
-
-
Galera, boa tarde!
Estou com um problema com o S@T Elgin Smart.
Ao emitir o cupom fiscal, o SAT está retornando a seguinte mensagem de erro:
539810|9999|SAT Desconectado
Já entrei em contato com a fabricante e atualizado a DLL, porém o erro persiste.
Alguém já passou por algum problema parecido?
-
Ao exportar o certificado, não habilitou a chave privada. Acabou ocasionando todo esse transtorno por aqui.
-
Juliomar, foi identificado um problema na importação no certificado do cliente.
Resolvemos o problema, exportando e importando novamente o certificado no internet explorer.
Obrigado pela ajuda!
-
1
-
-
Juliomar, tentei deixar somente a opção de SSLLib setada, porém, exibe a mensagem de invalid property value.
Mas, de qualquer forma, executei o instalador, reinicie a máquina e tentei emitir a NFe. Foi apresentado o mesmo erro.
Na minha máquina de desenvolvimento, é WINDOWS 10, a NFe é emitida normalmente. Mas, na máquina do cliente, está ocorrendo o erro.
-
Juliomar, obrigado pelo retorno.
Mas, essa opção já está marcada. Conforme imagem, abaixo.
As demais configurações:
-
Boa tarde, galera!
Estou com um problema de erro SSL em algumas máquinas WINDOWS 10. O erro ocorre tanto para Certificado A1, quanto para A3.
Ao tentar emitir a NFe, apresenta o seguinte erro:
Erro Interno: 12030
Erro HTTP: 0
URL: https://homologacao.nfe.fazenda.sp.gov.br/ws/nfeautorizacao4.asmx
Falha Recebendo Dados. Erro:Erro: 12030 - A conexão com o servidor foi redefinida ou encerrada, ou um protocolo SSL incompatível foi encontrado.As configurações no ACBrNFe, está da seguinte forma:
SSLLib: libWinCrypt
SSLCyptLib: cryWinCrypt
SSLHttpLib: httpWinHttp
SSLXmlSignLib: xsLibXml2
Realizei algumas pesquisas no fórum e nenhuma solução conseguiu me ajudar.
Alguém já passou por algum problema parecido?
-
iJSONEnviar.AddFormField('sku', iJSON, 'utf-8', 'application/json').ContentTransfer := '8bit';
//Configura o HTTP
IdHTTPConexao.Request.Clear;
IdHTTPConexao.Request.ContentType := 'multipart/form-data; boundary=' + iJSonEnviar.Boundary;
IdHTTPConexao.Request.CharSet := 'utf-8';
IdHTTPConexao.Request.CustomHeaders.Clear;
IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'multipart/form-data');
IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken);
IdHTTPConexao.Response.ContentType := 'application/json';
IdHTTPConexao.Response.CharSet := 'utf-8';Com esse meu código, eu recebi o retorno de 201, indicando que os novos parâmetros foram criados.
No meu código eu não precisei colocar essa linha IdHTTPConexao := TidHTTP.Create;
-
A solução encontrada, foi a seguinte:
iJSONEnviar := TIdMultiPartFormDataStream.Create;
try
iJSON := ('{"merchantId": merchantID,' + //ID do Restaurante (MerchantID)",
'"externalCode":"311",' + //COD PDV, código do sistema
'"availability": "AVAILABLE",' + //Disponibilidade do item, AVAILABLE OU UNAVAILABLE
'"name": "X BURGUER - TESTE 2",' + //Nome do Item,
'"description": "",' + //Descrição do Item (Composição)
'"order": 2,' + //Ordem para o item aparecer no cardápio
'"schedules": [],' +
'"price":{' +
'"originalValue": 0,' +//Valor Original do Item (Somente preencher caso o item estiver em promoção)
'"promotional": false,' + //Item está em promoção? True ou False
'"value": 12.50}'+
'}'); //Valor do item (Valor que vai para aparecer na plataforma Ifood)mRetorno.Lines.Clear;
mRetorno.Lines.Add(iJSON);iJSONEnviar.AddFormField('sku', iJSON, 'utf-8', 'application/json').ContentTransfer := '8bit';
//Configura o HTTP
IdHTTPConexao.Request.Clear;
IdHTTPConexao.Request.ContentType := 'multipart/form-data; boundary=' + iJSonEnviar.Boundary;
IdHTTPConexao.Request.CharSet := 'utf-8';
IdHTTPConexao.Request.CustomHeaders.Clear;
IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'multipart/form-data');
IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken);
IdHTTPConexao.Response.ContentType := 'application/json';
IdHTTPConexao.Response.CharSet := 'utf-8';try
IdHTTPConexao.Post('https://pos-api.ifood.com.br/v1.0/skus', iJSONEnviar);//201 = Indica que novos parâmetros foram criados com sucesso
if IdHTTPConexao.ResponseCode = 201 then
Application.MessageBox(PWideChar('Produto Cadastrado com Sucesso!'),
'Informação', MB_OK+MB_ICONINFORMATION);
except
on e:EIdHTTPProtocolException do
begin
if (e.ErrorCode <> 200) or (e.ErrorCode <> 201) then
begin
Application.MessageBox(PWideChar('Atenção! Ocorreu ao Cadastrar Produto no iFood. ' +
e.ErrorMessage),
'Aviso', MB_OK+MB_ICONWARNING);
Exit;
end;
end;
end;
finally
FreeAndNil(iJSONEnviar);
end;-
1
-
1
-
-
Alguém por aí, consegue ter alguma ideia do que possa ser?
Já estou perdido, sem saber muito o que fazer...
-
5 minutos atrás, datilas disse:
o que esta me encafifando é essa mensagem "Unsupported Media Type"
tenta assim
IdHTTPConexao.Request.Clear;
IdHTTPConexao.Request.ContentType := 'application/json';
IdHTTPConexao.Request.CharSet := 'utf-8';
IdHTTPConexao.Request.CustomHeaders.Clear;
IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken);
//IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'application/json');
IdHTTPConexao.Response.ContentType := 'application/json';
IdHTTPConexao.Response.CharSet := 'utf-8';Infelizmente continua com a mesma mensagem de erro.
Então, realmente... Já vi diversos exemplos e me retorna várias vezes esse erro de "Unsupported Media Type".
O teste que obtive o resultado de 201 via POSTMAN, gerou esse seguinte código:
POST /v1.0/skus HTTP/1.1
Host: pos-api.ifood.com.br
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
Authorization: Bearer (tokenGerado)
User-Agent: PostmanRuntime/7.19.0
Accept: */*
Cache-Control: no-cache
Postman-Token: 76987055-3ed2-4452-a4b1-fcc1b740af63,140a3c1e-1692-4f6d-9584-66848489a7b3
Host: pos-api.ifood.com.br
Accept-Encoding: gzip, deflate
Content-Length: 410
Connection: keep-alive
cache-control: no-cache
Content-Disposition: form-data; name="sku"{
"merchantId": merchantId,
"availability": "AVAILABLE",
"externalCode":"201",
"name": "FANTA LATA",
"description": "",
"order": 2,
"schedules": [],
"price": {
"originalValue": 0,
"promotional": false,
"value": 12.50}
}
------WebKitFormBoundary7MA4YWxkTrZu0gW-- -
8 minutos atrás, datilas disse:
// comenta essa linha IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', iJSONEnviar.RequestContentType); IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken); //deixa essa IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'application/json');//deixa essa // comenta essa linha IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Disposition', 'form-data; name="sku"'); IdHTTPConexao.Response.CharSet := 'UTF-8';
Ficou dessa maneira o fonte:
iJSONStream := TStringStream.Create(iJSON, TEncoding.UTF8); (Nessa linha tentei passar somente o iJSON
//Configura o HTTP
IdHTTPConexao.Request.Clear;
IdHTTPConexao.Request.CustomHeaders.Clear;
IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken);
IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'application/json');
IdHTTPConexao.Response.CharSet := 'UTF-8';try
IdHTTPConexao.Post('https://pos-api.ifood.com.br/v1.0/skus', iJSONStream, AResponseContent);
iRespostaIfood := AResponseContent.DataString;//201 = Indica que novos parâmetros foram criados com sucesso
if IdHTTPConexao.ResponseCode = 201 then
Application.MessageBox(PWideChar('Produto Cadastrado com Sucesso!'),
'Informação', MB_OK+MB_ICONINFORMATION);
except
on e:EIdHTTPProtocolException do
begin
if (e.ErrorCode <> 200) or (e.ErrorCode <> 201) then
begin
Application.MessageBox(PWideChar('Atenção! Ocorreu ao Cadastrar Produto no iFood. ' +
e.ErrorMessage),
'Aviso', MB_OK+MB_ICONWARNING);
Exit;
end;
end;
end;É apresentado o seguinte erro:
---------------------------
Aviso
---------------------------
Atenção! Ocorreu ao Cadastrar Produto no iFood.
<html><body><h1>Whitelabel Error Page</h1><p>This application has
no explicit mapping for /error, so you are seeing this as a fallback.
</p><div id='created'>Tue Nov 05 16:56:09 GMT-03:00 2019</div><div>
There was an unexpected error (type=Unsupported Media Type, status=415).
</div><div>Unsupported Media Type</div></body></html> -
9 minutos atrás, datilas disse:
tenta ssim:
Var iStringListProduto: TStringList; iRespostaIfood: String; iJSON: String; iJSONStream, AResponseContent: TStringStream; // iJSONEnviar : TIdMultipartFormDataStream; Begin // iJSONEnviar := TIdMultiPartFormDataStream.Create; iJSONStream := TStringStream.Create(iJSON); AResponseContent := TStringStream.Create(''); Try iJSON := ('{"merchantId": MerchantID,' + //CÓD DO RESTAURANTE '"externalCode":"205",' + '"availability": "AVAILABLE",' + '"name": "X BURGUER - TESTE",' + '"description": "PÃO, HAMBURGUER E QUEIJO",' + '"order": 1,' + '"schedules": [],' + '"price":{' + '"originalValue": 0,' + '"promotional": false,' + '"value": 12.50}' + '}'); mRetorno.Lines.Clear; mRetorno.Lines.Add(iJSON); //Configura o HTTP IdHTTPConexao.Request.Clear; IdHTTPConexao.Request.CustomHeaders.Clear; IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', iJSONEnviar.RequestContentType); IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken); IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'application/json'); //IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Disposition', 'form-data; name="sku"'); IdHTTPConexao.Response.CharSet := 'UTF-8'; Try IdHTTPConexao.Post('https://pos-api.ifood.com.br/v1.0/skus', iJSONStream, AResponseContent); iRespostaIfood := AResponseContent.DataString; //201 = Indica que novos parâmetros foram criados com sucesso If IdHTTPConexao.ResponseCode = 201 Then Application.MessageBox(PWideChar('Produto Cadastrado com Sucesso!'), 'Informação', MB_OK + MB_ICONINFORMATION); Except On e: EIdHTTPProtocolException Do Begin If (e.ErrorCode <> 200) Or (e.ErrorCode <> 201) Then Begin Application.MessageBox(PWideChar('Atenção! Ocorreu ao Cadastrar Produto no iFood. ' + e.ErrorMessage), 'Aviso', MB_OK + MB_ICONWARNING); Exit; End; End; End; Finally FreeAndNil(iJSONStream); FreeAndNil(AResponseContent); End;
Tentei das seguintes formas:
Onde estava o IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', iJSONEnviar.RequestContentType); como foi comentado, mudei para IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'multipart/form-data');
E me apresentou o seguinte erro:
---------------------------
Aviso
---------------------------
Atenção! Ocorreu ao Cadastrar Produto no iFood.
<html><body><h1>Whitelabel Error Page</h1><p>
This application has no explicit mapping for /error,
so you are seeing this as a fallback.</p><div id='created'>
Tue Nov 05 15:47:05 GMT-03:00 2019</div><div>There was an unexpected error
(type=Internal Server Error, status=500).</div><div>java.lang.RuntimeException:
java.io.IOException: Missing initial multi part boundary</div></body></html>Se eu comentar a linha citada, me apresenta o erro seguinte erro:
---------------------------
Aviso
---------------------------
Atenção! Ocorreu ao Cadastrar Produto no iFood.
<html><body><h1>Whitelabel Error Page</h1><p>
This application has no explicit mapping for /error,
so you are seeing this as a fallback.</p><div id='created'>
Tue Nov 05 15:47:05 GMT-03:00 2019</div><div>There was an unexpected error
(type=Internal Server Error, status=500).</div><div>java.lang.RuntimeException:
java.io.IOException: Missing initial multi part boundary</div></body></html>E de outra forma, se eu crio uma variável iJSONEnviar : TIdMultipartFormDataStream;
E passo em IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', iJSONEnviar.RequestContentType);
Me retorna o seguinte erro:
---------------------------
Aviso
---------------------------
Atenção! Ocorreu ao Cadastrar Produto no iFood.
<html><body><h1>Whitelabel Error Page</h1><p>This application has no
explicit mapping for /error, so you are seeing this as a fallback.</p>
<div id='created'>Tue Nov 05 15:54:19 GMT-03:00 2019</div><div>There was an unexpected error
(type=Internal Server Error, status=500).</div><div>java.lang.RuntimeException:
java.io.IOException: Missing initial multi part boundary</div></body></html> -
2 minutos atrás, datilas disse:
pelo que vi na documentação não preencher ('"schedules": [],' +) caso não exista.
{ "merchantId": 999999, "ID do Restaurante (MerchantID)", "externalCode": "155", "COD PDV", "availability": "AVAILABLE", "Disponibilidade do item", "name": "X BURGUER", "Nome do Item", "description": "PÃO, HAMBURGUER E QUEIJO", " Descrição do Item (Composição)", "order": 0: "Ordem para o item aparecer no cardápio", "price": { "originalValue": 0: " Valor Original do Item (Somente preencher caso o item estiver em promoção)", "promotional": false: " Item está em promoção?" "value": 12 } "Valor do item (Valor que vai para aparecer na plataforma Ifood)" } //preencher apenas se existir (schedules) { "merchantId": 999999, "ID do Restaurante (MerchantID)", "externalCode": 9430, "COD PDV" "availability": "AVAILABLE", "Disponibilidade do item", "name": "Esfiha de Carne", "Nome do Item" "description": "Recheio com Mussarela.", "Descrição do Item (Composição)", "schedules": [{ "Disponibilidade dos itens " Dias da semana e horário funcionamento "" "dayOfWeek": "MONDAY" " Dia da semana que funciona" }, { "dayOfWeek": "FRIDAY" " Dia da semana que funciona" } ], "order": 1, "Ordem para o item aparecer no cardápio", "price": { "Preço" "originalValue": 3.96, "Valor Original do Item (Somente preencher caso o item estiver em promoção)" "promotional": true, " Item está em promoção?" "value": 1.98 "Valor promocional do item (Valor que vai para aparecer na plataforma Ifood)" } }
Então, eu já tentei das duas formas. No POSTMAN, eu usei o seguinte JSON:
{
"merchantId": 292468,
"availability": "AVAILABLE",
"externalCode":"201",
"name": "FANTA LATA",
"description": "",
"order": 2,
"schedules": [],
"price": {
"originalValue": 0,
"promotional": false,
"value": 12.50}
}
Foi retornado o código 201, sendo criado o produto na API do iFood. Eu acho que o problema, esteja no momento de passar os parâmetros no form-data.
Mas, ainda não descobri qual a forma correta de passar esse JSON para criar o produto, via Delphi.
-
1 hora atrás, datilas disse:
pode ser por causa do acento na palavra "PÃO" tente converter o texto para utf-8 ou tira o acento para testar
Datilas, obrigado por responder.
Realizei o teste com o que vce me solicitou, mas ainda não deu certo
-
Galera,
Bom dia!
Estou com um problema, por alguns dias e não consigo resolver. Estou realizando a integração do meu sistema com o iFood.
Estou realizando alguns testes, por enquanto, estava obtendo sucesso, até tentar cadastrar o produto na API do iFood.
O procedimento que estou utilizando para cadastro é o seguinte:
procedure TfrmPrincipal.btnCriarProdutoClick(Sender: TObject);
var
iStringListProduto : TStringList;
iRespostaIfood : string;
iJSON : string;
iJSONStream : TStringStream;
iJSONEnviar : TIdMultipartFormDataStream;
begin
iJSONEnviar := TIdMultiPartFormDataStream.Create;try
iJSON := ('{"merchantId": MerchantID,' + //CÓD DO RESTAURANTE
'"externalCode":"205",' +
'"availability": "AVAILABLE",' +
'"name": "X BURGUER - TESTE",' +
'"description": "PÃO, HAMBURGUER E QUEIJO",' +
'"order": 1,' +
'"schedules": [],' +
'"price":{' +
'"originalValue": 0,' +
'"promotional": false,' +
'"value": 12.50}'+
'}');
mRetorno.Lines.Clear;
mRetorno.Lines.Add(iJSON);iJSONEnviar.AddFormField('sku', iJSON);
//Configura o HTTP
IdHTTPConexao.Request.Clear;
//IdHTTPConexao.Request.CharSet := 'UTF-8';
IdHTTPConexao.Request.CustomHeaders.Clear;
IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', iJSONEnviar.RequestContentType);
IdHTTPConexao.Request.CustomHeaders.AddValue('Authorization', 'Bearer ' + self.fToken);
IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Type', 'application/json');
IdHTTPConexao.Request.CustomHeaders.AddValue('Content-Disposition', 'form-data; name="sku"');
IdHTTPConexao.Response.CharSet := 'UTF-8';try
iRespostaIfood := IdHTTPConexao.Post('https://pos-api.ifood.com.br/v1.0/skus', iJSONEnviar);//201 = Indica que novos parâmetros foram criados com sucesso
if IdHTTPConexao.ResponseCode = 201 then
Application.MessageBox(PWideChar('Produto Cadastrado com Sucesso!'),
'Informação', MB_OK+MB_ICONINFORMATION);
except
on e:EIdHTTPProtocolException do
begin
if (e.ErrorCode <> 200) or (e.ErrorCode <> 201) then
begin
Application.MessageBox(PWideChar('Atenção! Ocorreu ao Cadastrar Produto no iFood. ' +
e.ErrorMessage),
'Aviso', MB_OK+MB_ICONWARNING);
Exit;
end;
end;
end;
finallyend;
end;Estou obtendo o seguinte retorno de erro:
---------------------------
Aviso
---------------------------
Atenção! Ocorreu ao Cadastrar Produto no iFood.
<html><body><h1>Whitelabel Error Page</h1><p>This application has no explicit
mapping for /error, so you are seeing this as a fallback.</p><div id='created'>
Tue Nov 05 10:50:01 GMT-03:00 2019</div><div>There was an unexpected error
(type=Bad Request, status=400).</div><div>Unable to parse form content</div></body></html>Obs. Esse mesmo JSON, executei no POSTMAN e estou obtendo um retorno positivo que o produto é cadastrado com sucesso, porém, o erro está no fonte e não estou conseguindo identificar.
Se alguém, conseguir me auxiliar ou ajudar.
Obrigado!
-
Bom dia, Juliomar!
Acabei resolvendo aqui.
O procedimento que utilizei, foi o seguinte:
Limpei todo o conteúdo do FORTES, ou seja, deletei os arquivos e realizei o UPLOAD novamente, desinstalei o FORTES do delphi também. E realizei a instalação pelo instalador do FORTES.
Em seguida, realizei a limpeza do ACBr e fiz o upload da pasta novamente, desinstalei o que tinha do ACBr do delphi, utilizei o instalador do ACBr.
Após, realizado esses procedimentos, o ACBr foi instalado com sucesso, sem problema algum em minha máquina.
Muito obrigado!
-
2
-
-
Boa tarde, pessoal do ACBr!
Estou com um problema ao realizar a instalação/atualização do meu ACBr. Eu tenho duas versões do delphi instaladas em minha máquina, Delphi XE6 e o Delphi 7.
Realizei a instalação/atualização do Delphi XE6, sem maiores problemas. Porém o problema em si, está ao realizar a atualização do ACBr no Delphi 7.
Fiz uma pesquisa no Fórum, encontrei tópicos com o mesmo problema, porém ao realizar os mesmos procedimentos, não estou obtendo êxito.
Sei que o erro ocasionado, é em relação ao Fortes, porém já realizei a atualização do Fortes, fiz a varredura em minha máquina com o frce.*, deletei os arquivos, mas o erro persiste. Segue o LOG do erro.
Obrigado.
-
Problema solucionado.
Minha unit pcnNFeW, estava assim:
if (trim(nfe.Cobr.Fat.nFat) <> '') or
(nfe.Cobr.Fat.vOrig > 0) or
(nfe.Cobr.Fat.vDesc > 0) or
(nfe.Cobr.Fat.vLiq > 0) then
begin
Gerador.wGrupo('fat', 'Y02');
//<<<<<<< .mine
Gerador.wCampo(tcStr, 'Y03', 'nFat ', 01, 60, 0, nfe.Cobr.Fat.nFat, DSC_NFAT);
Gerador.wCampo(tcDe2, 'Y04', 'vOrig ', 01, 15, 0, nfe.Cobr.Fat.vOrig, DSC_VORIG);
Gerador.wCampo(tcDe2, 'Y05', 'vDesc ', 01, 15, 0, nfe.Cobr.Fat.vDesc, DSC_VDESC);
Gerador.wCampo(tcDe2, 'Y06', 'vLiq ', 01, 15, 0, nfe.Cobr.Fat.vLiq, DSC_VLIQ);
//||||||| .r15437
Gerador.wCampo(tcStr, 'Y03', 'nFat ', 01, 60, 0, nfe.Cobr.Fat.nFat, DSC_NFAT);
.wCampo(tcDe2, 'Y04', 'vOrig ', 01, 15, 0, nfe.Cobr.Fat.vOrig, DSC_VORIG);
.wCampo(tcDe2, 'Y05', 'vDesc ', 01, 15, 0, nfe.Cobr.Fat.vDesc, DSC_VDESC);
Gerador.wCampo(tcDe2, 'Y06', 'vLiq ', 01, 15, 0, nfe.Cobr.Fat.vLiq, DSC_VLIQ);
//=======
Gerador.wCampo(tcStr, 'Y03', 'nFat ', 01, 60, IIf(FOpcoes.CamposFatObrigatorios and (NFe.infNFe.Versao >= 4),1,0), nfe.Cobr.Fat.nFat, DSC_NFAT);
Gerador.wCampo(tcDe2, 'Y04', 'vOrig ', 01, 15, IIf(FOpcoes.CamposFatObrigatorios and (NFe.infNFe.Versao >= 4),1,0), nfe.Cobr.Fat.vOrig, DSC_VORIG);
Gerador.wCampo(tcDe2, 'Y05', 'vDesc ', 01, 15, IIf(FOpcoes.CamposFatObrigatorios and (NFe.infNFe.Versao >= 4),1,0), nfe.Cobr.Fat.vDesc, DSC_VDESC);
Gerador.wCampo(tcDe2, 'Y06', 'vLiq ', 01, 15, IIf(FOpcoes.CamposFatObrigatorios and (NFe.infNFe.Versao >= 4),1,0), nfe.Cobr.Fat.vLiq, DSC_VLIQ);
//>>>>>>> .r15563
Gerador.wGrupo('/fat');
end;Mesmo atualizando o ACBr, essa unit persistia, por isso estava repetindo os campos. Então, removi a unit e baixei novamente e ficou tudo correto.
NFe emitindo corretamente.
-
2
-
-
André,
Eu gero sim. Por isso, estou estranhando, por estar duplicando essas linhas no XML.
-
Bom dia, galera!
Estou com um problema ao validar o XML da NFe. Estava emitindo normalmente,
porém após uma atualização do sistema, começou a emitir o seguinte erro ao validar o XML da NFe.
---------------------------
Falha na validação dos dados da nota: 42
1871 - Element '{http://www.portalfiscal.inf.br/nfe}nFat': This element is not expected.---------------------------
Penso que esse erro seja de schemas, já atualizei a pasta schemas, atualizei o ACBr, desinstalando e instalando novamente, mas o erro persiste.Estou encaminhando o XML, na TAG de nFAT, percebi que se repete 3 vezes, porém no fonte ao debugar, está normal. Mas, no XML está se repetindo essa TAG.
if cdsFinalizadoracodfinalizadoranfe.AsString = '14' then
begin
tPag := fpDuplicataMercantil;
vPag := cdsFinalizadoravalorfinalizadora.AsFloat;Cobr.Fat.nFat := inttostr(numero_nota);
Cobr.Fat.vOrig := cdsFinalizadoravalorfinalizadora.AsFloat; //converte(sql_nota.fieldbyname('valor').asfloat, 2);
Cobr.Fat.vDesc := 0.00;
Cobr.Fat.vLiq := cdsFinalizadoravalorfinalizadora.AsFloat;//converte(sql_nota.fieldbyname('valor').asfloat, 2);//Grupo duplicata é somente para o tipo de pagamento vinculado com Duplicata Mercantil
cdsVencimento.First;
cont := 1;
if not cdsVencimento.IsEmpty then
begin
while not cdsVencimento.Eof do
begin
with Cobr.Dup.Add do
begin
nDup := dupeString('0', 3-Length(IntToStr(cont)))+ inttostr(cont);
dVenc := cdsVencimentodatavencimento.AsDateTime; //sql_ana.fieldbyname('data_p').asdatetime;
vDup := cdsVencimentovalorvencimento.AsFloat; //converte(sql_ana.fieldbyname('valor').asfloat, 2);
inc(cont);
end;
cdsVencimento.next;
end;end;
Segue também uma parte do código fonte.
Alguém por aí passou por algum problema semelhante? Ou consegue me ajudar?
-
Problema resolvido. Atualizei os fontes do ACBr, mas não tinha dado certo. Mas, desinstalei e instalei novamente e deu certo.
-
1
-
-
Foram solicitadas as seguintes alterações pelo banco:
Favor prosseguir os ajustes abaixo:
1. No arquivo de remessa, posições:
a. 123 a 135: informar o "seu numero"= "numero do documento".
b. 154 a 157: inserir o numero da agência da conta.
c. 222 a 223: inserir cód. 51 referente ao juros mensal.
d. 226 a 237: informar o valor do juros em porcentagem.
e. 276 a 277: inserir cód. 03 referente a multa.
f. 280 a 281: inserir cód. 09 referente ao protesto.
g. 282 a 283: informar prazo para instrução de protesto.
h. 284 a 288: informar a taxa referente a multa.
Referente ao Juros mensal no ACBr Boleto no arquivo de remessa na posição 222 a 223, está passando 50 fixo, mas quando altero para 51, continua a passar o valor de 50. Na remessa me apresenta o 50. Alguém pode me dizer o que posso fazer para mudar isso?
Trecho do código:
if ValorMoraJuros > 0 then
begin
TipoJuros := '51';
Instrucao1 := '01'; // 01- Não Dispensar Juros de Mora
Prazo1 := '01';
end
else
begin
TipoJuros := '00';
Instrucao1 := '00'; // 00- Sem Instrução
Prazo1 := '00';
end;
ERRO S@T Elgin Smart
em MFE - Módulo Fiscal Eletrônico
Postado
Obrigado pelo retorno, Antonio Carlos.
O driver está instalado corretamente. Pois, o software da Elgin, comunica com o SAT normalmente.
O que ocorre, é o seguinte... Temos dois softwares que emitem SAT, um é controle de mesas e outro é o Delivery.
Funciona normalmente emitindo cupom por um software ou pelo outro, porém, após um tempo o SAT para de emitir os cupons e emite a mensagem de erro.
Mas, ao realizar o teste com o software de comunicação da Elgin, o SAT está em funcionamento. Porém, ao realizar os testes o sistema não emite o cupom, pois exibe a mensagem de erro, dizendo que o SAT está desconectado.