ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Dúvida sobre array

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
fabriciofg1980
Novato
Novato


Registrado: Quarta-Feira, 6 de Janeiro de 2016
Mensagens: 12

MensagemEnviada: Sex Abr 21, 2017 12:58 pm    Assunto: Dúvida sobre array Responder com Citação

Boa tarde amigos. Uma dúvida que me assola. Como poderia declarar a ARRAY "ARRAYOFITEMADICIONAL" utilizando esta função...

Código:
 function  CredNet(const Credenciais: Credenciais; const Documento: string; const Estado: string; const Adicionais: ArrayOfItemAdicional): CredNetResult; stdcall;

  { "SOAWebServices"[GblSmpl] }
  ItemAdicional = (Nenhum, QuadroDeSocios, Participacoes, RiskScoring, LimiteCredito);


Obs.: A classe credencial e documento são declaradas certinho.

Meu código:


Código:

procedure TForm1.Button1Click(Sender: TObject);
//type
  // TItemAdicional  = (Nenhum,QuadroDeSocios,Participacoes,RiskScoring,LimiteCredito);

//const
//it: array[0..4] of ItemAdicional;

var
cred: CredNet;
pass: Credenciais;
soap: SERASASoap;
t: Transacao;
dados: SinteseCadastral;
i: integer;
item: ItemAdicional;
//it: array[0..4] of ItemAdicional = (Nenhum,QuadroDeSocios,Participacoes,RiskScoring,LimiteCredito);

begin
soap := GetSERASASoap(false,'',HTTPRIO1);
pass := Credenciais.Create;
cred := CredNet.Create;
t :=  Transacao.Create;
dados := SinteseCadastral.Create;

pass.Email := 'xxx@gmail.com';
pass.Senha := 'mmm';

it[0] := crednet1.ItemAdicional.Nenhum;

cred := soap.CredNet(pass,edit1.Text,'RJ',it);


label1.Caption := t.CodigoStatusDescricao;


Abraço a todos e desde já agradeço
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
leo_cj
Mestre
Mestre


Registrado: Sábado, 26 de Março de 2011
Mensagens: 881

MensagemEnviada: Seg Abr 24, 2017 8:43 am    Assunto: Responder com Citação

Tente assim:

Código:
 function  CredNet(const Credenciais: Credenciais; const Documento: string; const Estado: string; const Adicionais: array of TItemAdicional): CredNetResult; stdcall;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
fabriciofg1980
Novato
Novato


Registrado: Quarta-Feira, 6 de Janeiro de 2016
Mensagens: 12

MensagemEnviada: Seg Abr 24, 2017 5:18 pm    Assunto: Responder com Citação

Tente assim: ??????

rsrsrs
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
fabriciofg1980
Novato
Novato


Registrado: Quarta-Feira, 6 de Janeiro de 2016
Mensagens: 12

MensagemEnviada: Seg Abr 24, 2017 7:59 pm    Assunto: Responder com Citação

leo_cj escreveu:
Tente assim:

Código:
 function  CredNet(const Credenciais: Credenciais; const Documento: string; const Estado: string; const Adicionais: array of TItemAdicional): CredNetResult; stdcall;


Tente assim ????

Faltou alguma coisa amigo ? rsrs
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
leo_cj
Mestre
Mestre


Registrado: Sábado, 26 de Março de 2011
Mensagens: 881

MensagemEnviada: Ter Abr 25, 2017 9:24 am    Assunto: Responder com Citação

se for só criar o array so tipo TItemAdicional fica assim

O type dele pelo que vi é
Código:
type
   TItemAdicional  = (Nenhum,QuadroDeSocios,Participacoes,RiskScoring,LimiteCredito);


o array ficaria
Código:
var
  ItemAdicional = array[0..4] of TItemAdicional;


e para popular o array seria
Código:
begin
  ItemAdicional[0] := Nenhum;
  ItemAdicional[1] := QuadroDeSocios;
  ItemAdicional[2] := Participacoes;
  ItemAdicional[3] := RiskScoring;
  ItemAdicional[4] := LimiteCredito;
end;


uma coisa que observei, você tem a função CredNet que faz referência a uma função em uma DLL, porém no seu método você tem uma variável do tipo CredNet, pra utilizar assim, você não teria que criar um tipo específico da função pra depois instanciar a variável?

ex:
Código:
type
  TMeuTeste = function(Msg: String; AType: TMsgDlgType;
     AButtons: TMsgDlgButtons; IndiceHelp: Integer; DefButton: TModalResult=MrNone): Word;stdcall;


e no código fazer assim:
Código:
procedure TMainForm.Button4Click(Sender: TObject);
var
  handle: THandle;
  Teste: TMeuTeste;
begin
  handle := LoadLibrary('Mensagens.dll');
  if (handle = 0) then
  begin
    ShowMessage('DLL Não Encontrada');
    Abort;
  end;

  Teste := GetProcAddress(handle, 'MensagemPadrao');
  if Teste('Teste Mensagem', mtConfirmation, [mbYes, mbNo], 0) = mrNo then
    ShowMessage('Pressionado No');
  FreeLibrary(handle);
end;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB