Caso interesse á alguem fiz para funcionar no lazarus
procedure TFormOrcamento.DBGridDadosMouseMove(Sender: TObject; Shift: TShiftState; X, Y: integer);
var
C, L, auxID: integer;
auxB: TBookMark;
begin
//Pega a Coluna e a Linha pela posição X, Y
(Sender as TDBGrid).MouseToCell(X, Y, C, L);
if(L < 1)then Exit;
try
//Marca a posição do dataset
auxB := DataSourceDados.DataSet.GetBookmark;
//Desabilita controles para não ficar oscilando
DataSourceDados.DataSet.DisableControls;
//Vai para a linha desejada
DataSourceDados.DataSet.RecNo := L;
//Pega a informação
auxID := DataSourceDados.DataSet.FieldByName('ID').AsInteger;
//Adiciona a informação ao Hint
(Sender as TDBGrid).Hint := 'ID: ' + IntToStr(auxID);
//Mostra o Hint
Application.ActivateHint(Mouse.CursorPos);
finally
//Volta para a posição inicial
DataSourceDados.DataSet.GotoBookmark(auxB);
//Limpa a marcação
DataSourceDados.DataSet.FreeBookmark(auxB);
//Reabilida controles
DataSourceDados.DataSet.EnableControls;
end;
end;
Boa noite, graças a DEUS descobri, não sei exatamente o porque mas deu certo.
Agradeço a explicação de ambos, não conhecia o "TNFe" da "pcnNFE", fico grato pelo conhecimento, mas como o "Record" já estava pronto deixei com ele mesmo, nas proximas vezes usarei o "TNFe".
Então... usando o exemplo do @Fabrício G. Araújo, rodou normal e o meu dava erro, dai de pois de varios testes descobri que tirando o "bcOutros: Pag[I].TBAND := 99;" do case o erro parou.
Dai ficou assim e funciona perfeitamente...
if (Pag[I].TPAG = 3) or (Pag[I].TPAG = 4) then
case auxNF.NotasFiscais.Items[0].NFe.pag[I].tBand of
bcVisa: Pag[I].TBAND := 1;
bcMasterCard: Pag[I].TBAND := 2;
bcAmericanExpress: Pag[I].TBAND := 3;
bcSorocred: Pag[I].TBAND := 4;
bcDinersClub: Pag[I].TBAND := 5;
bcElo: Pag[I].TBAND := 6;
bcHipercard: Pag[I].TBAND := 7;
bcAura: Pag[I].TBAND := 8;
bcCabal: Pag[I].TBAND := 9;
bcAlelo: Pag[I].TBAND := 10;
bcBanesCard: Pag[I].TBAND := 11;
bcCalCard: Pag[I].TBAND := 12;
bcCredz: Pag[I].TBAND := 13;
bcDiscover: Pag[I].TBAND := 14;
bcGoodCard: Pag[I].TBAND := 15;
bcGreenCard: Pag[I].TBAND := 16;
bcHiper: Pag[I].TBAND := 17;
bcJcB: Pag[I].TBAND := 18;
bcMais: Pag[I].TBAND := 19;
bcMaxVan: Pag[I].TBAND := 20;
bcPolicard: Pag[I].TBAND := 21;
bcRedeCompras: Pag[I].TBAND := 22;
bcSodexo: Pag[I].TBAND := 23;
bcValeCard: Pag[I].TBAND := 24;
bcVerocheque: Pag[I].TBAND := 25;
bcVR: Pag[I].TBAND := 26;
bcTicket: Pag[I].TBAND := 27;
else
Pag[I].TBAND := 99;
end;
Se alguem puder explicar pq esse "bcOutros" deu problema nesse contexto fico muito feliz pois gosto de aprender td nos minimos detalhes, mas o problema já está resolvido e da minha porte pode fechar o tópico se necessário, muito obrigado mesmo pela dedicação de vcs. DEUS abençoe.
RibaSoft's post in GMail API was marked as the answer
Olá, só passando para avisar que devido a complexidade e algumas falhas na API do Gmail, optei por usar o Spark Post como o Daniel Simões havia sugerido nesse link.
Da minha parte pode se encerrar este post, DEUS abençoe a todos.
Olá segue os cálculos de ST interna, ST interestadual com beneficio fiscal, ST interestadual com beneficio de pis/confis e calculo de MVA ajustada.
Calculos ICM ST.xlsx
Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.