Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda em terminar uma procedure


robinhocne

Pergunta

To criando uma procedure onde pesquiso o valor do procedimento na tabela Adm_Proced_Empresa se não tiver nada ele pega da tabela Adm_Procedimentos que traz as informações da configuracao de um determinado Form.

Meu problema é ali no while, eu tinha que trazer o nome do procedimento (P.ProProcedimento) e o valor dele (EP.EpdValor ou P.Valor), pois quando não tem no EP.EpdValor eu pego o valor default do P.Valor, mas tenho que trazer os resultados deles na variavel e ai ver o valor dele e jogar a configuração,

Como faço para receber os nomes dos procedimentos e valores e ai passar eles verificando se é ele mesmo tipo assim:

if Procedimento = 'TIPO_CADASTRO' then//traz padrão se é juridico ou fisico o cadastro
  begin
    
    If Valor = 'F' then
       begin 
         CboPes.ItemIndex := 0;
       end
       else
    If Valor = 'J' then
       begin
         CboPes.ItemIndex := 1; 
       end;

   end
if Procedimento = 'OBG_CPF' then//traz padrão se é juridico ou fisico o cadastro
   else
   begin

    If Valor = 'S' then
       begin 
          
       end
       else
    If Valor = 'N' then
       begin

       end;

   end;
procedure Procedimentos(Formulario, EmpCodigo:String);
var
  Procedimento, Valor : String;
begin

  with Dtm.QryProcedimentos do
    begin
      Close;
      sql.Clear;
      sql.Add('Select P.ProCodigo, P.ProFormulario, P.ProProcedimento, P.ProValor, P.ProObrigatorio,');
      sql.Add('EP.ProCodigo, EP.EpdValor, EP.EmpCodigo');
      sql.Add('From Adm_Procedimentos P, Adm_Proced_Empresa EP where P.ProFormulario =:For and P.procodigo = EP.procodigo and');
      sql.Add('EP.EmpCodigo =:EmpCod');
      sql.Add('group by P.ProCodigo, P.ProFormulario, P.ProProcedimento, P.ProValor, P.ProObrigatorio,');
      sql.Add('EP.procodigo, ep.epdvalor, ep.empcodigo');
      ParamByName('For').AsString    := Formulario;
      ParamByName('EmpCod').AsString := EmpCodigo;
      open;
    end;

  while not Dtm.QryProcedimentos.Eof do
    begin

      Procedimento := Dtm.QryProcedimentos.FieldByName('P.Procedimento').AsString;

      if Dtm.QryProcedimentos.FieldByName('EP.EpdValor').AsString = '' then
        begin
          Valor := Dtm.QryProcedimentos.FieldByName('P.Valor').AsString;
        end
        else
      if Dtm.QryProcedimentos.FieldByName('EP.EpdValor').AsString <> '' then
        begin
          Valor := Dtm.QryProcedimentos.FieldByName('EP.EpdValor').AsString;
        end;

      Dtm.QryProcedimentos.Next;
    end;

end;

ai eu não sei, já me deu nó na cabeça....alguém poderia me ajudar ?

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...