Advertisement
filhotecmail

TThread do Metrosience parte 2

Apr 1st, 2018
289
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 41.93 KB | None | 0 0
  1. MetroScience, [01.04.18 19:24]
  2. [In reply to Carlos Dias Da silva Delphi Developer]
  3. end;
  4.                           qrysp_gen_fbs_email_enviado_id.close;
  5.                           qrysp_gen_fbs_email_enviado_id.Open;
  6.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
  7.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='A';
  8.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
  9.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
  10.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString;
  11.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL;
  12.                           qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
  13.                           try
  14.                            qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
  15.                           except
  16.                            sair:=True;
  17.                            TThread.Synchronize(myThread, procedure
  18.                              begin
  19.                                ShowMessage('Erro ao Cadastrar Email em Tabela.');
  20.                              end);
  21.                           end;
  22.                           qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
  23.                           qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
  24.                           qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
  25.                           for xAnexo := 0 to ListBoxAssociacao.Items.Count-1 do
  26.                             begin
  27.                               qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]);
  28.                               try
  29.                                 qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
  30.                               except
  31.   //                              ShowMessage('Erro ao Cadastrar Anexo(s).');
  32.                               end;
  33.                             end;
  34.                         end;
  35.                     end
  36.                   else
  37.                     if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  38.                                       qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, emailassociacao,
  39.                                       qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  40.                                       '', '', ListBoxAssociacao)=false) then
  41.                        TThread.Synchronize(myThread, procedure
  42.                          begin
  43.                            ShowMessage('Erro ao inserir email...');
  44.                          end)
  45.                   else
  46.                     begin
  47.                       for xAnexo := 0 to ListBoxAssociacao.Items.Count-1 do
  48.                         begin
  49.                           aj:='';
  50.                           I:=4;
  51.                           repeat
  52.                             aj:=aj+Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1);
  53.                             Inc(I);
  54.                           until (Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1)='_');
  55.                           try
  56.                             qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(AJ);
  57.                           except
  58.                             qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(Copy(AJ,4,Length(AJ)-3));
  59.                           end;
  60.  
  61. MetroScience, [01.04.18 19:24]
  62. [In reply to Carlos Dias Da silva Delphi Developer]
  63. CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,i,1)
  64.                         else
  65.                           CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  66.                       end
  67.                   end
  68.                 else
  69.                   FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL.AsString) do
  70.                     begin
  71.                       IF (COPY(qryCORPOEMAILCORPO_EMAIL.AsString,I,1)<>'#') then
  72.                         CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL.AsString,i,1)
  73.                       else
  74.                         CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  75.                     end;
  76.  
  77.               if (Copy(ExtractFileName(listbox1.Items.Strings[0]),1,3)='Rel') then
  78.               else
  79.               if (Trim(qryfbs_email_saidaLAUDOS_MAPA_A_EMAIL.AsString)<>'') then
  80.                 if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  81.                                   qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryfbs_email_saidaLAUDOS_MAPA_A_EMAIL.AsString,
  82.                                   qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  83.                                   '', '', ListBox1)=false) then
  84.                    TThread.Synchronize(myThread, procedure
  85.                      begin
  86.                        ShowMessage('Erro ao inserir email...');
  87.                      end);
  88.  
  89.                TThread.Synchronize(myThread, procedure
  90.                  begin
  91.                     lblinformacao.Caption:='Enviando Email para o Proprietário.';
  92.                     ListBox1.Items.Add(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio);
  93.                  end);
  94.   //---------— INICIO EMAIL PARA O PROPRIETÁRIO
  95.  
  96.                 qryCORPOEMAIL.CLOSE;
  97.                 if (ListBox1.Items.Text<>'') then
  98.                   begin
  99.                     if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  100.                                       qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryEmailClienteCLI_A_EMAIL3.AsString,
  101.                                       qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  102.                                       '', '', ListBox1)=false) then
  103.                      TThread.Synchronize(myThread, procedure
  104.                        begin
  105.                          ShowMessage('Erro ao inserir email...');
  106.                        end)
  107.                     else
  108.                       begin
  109.                         for xAnexo := 0 to ListBox1.Items.Count-1 do
  110.                           begin
  111.                             if (ListBox1.Items.Strings[xAnexo]=qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio) then
  112.                               begin
  113.                                 destino:=qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+NomeRelatorio;
  114.                               end
  115.                             else
  116.                               begin
  117.                                 aj:='';
  118.                                 I:=4;
  119.                                 repeat
  120.                                   aj:=aj+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1);
  121.                                   Inc(I);
  122.                                 until (Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1)='_');
  123.                                 try
  124.                                   qryAmostra_Enviada_PROPRIETARIO.ParamByName('AMOSTRA').AsInteger:=StrToInt(AJ);
  125.                                 except
  126.                                   qryAmostra_Enviada_PROPRIETARIO.ParamByName('AMOSTRA').AsInteger:=StrToInt(copy(AJ,4,length(aj)-3));
  127.                                 end;
  128.                                 qryAmostra_Enviada_PROPRIETARIO.EXECSQL;
  129.  
  130. MetroScience, [01.04.18 19:24]
  131. [In reply to Carlos Dias Da silva Delphi Developer]
  132. destino:=Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),1,3)+ExtractFileName(aj)+'.pdf');
  133.                               end;
  134.                             origem:=ListBox1.Items.Strings[xAnexo];
  135.                             if not FileExists(destino) then
  136.                               if not CopyFile(PChar(Origem), PChar(Destino), true) then
  137.                                 TThread.Synchronize(myThread, procedure
  138.                                   begin
  139.                                     mmoEroosEmail.Lines.Add('Erro ao copiar ' + Origem + ' —> '+ Destino);
  140.                                   end);
  141.                           end;
  142.                         qrysp_gen_fbs_email_enviado_id.close;
  143.                         qrysp_gen_fbs_email_enviado_id.Open;
  144.  
  145.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
  146.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='P';
  147.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
  148.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
  149.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=qryEmailClienteCLI_A_EMAIL3.AsString;
  150.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL+'';
  151.                         qryCORPOEMAIL.Open;
  152.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
  153.                         qryCORPOEMAIL.CLOSE;
  154.                         try
  155.                          qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
  156.                         except
  157.                          sair:=True;
  158.                          TThread.Synchronize(myThread, procedure
  159.                            begin
  160.                              ShowMessage('Erro ao Cadastrar Email em Tabela.');
  161.                            end);
  162.                         end;
  163.                         qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
  164.                         qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
  165.                         qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
  166.                         for xAnexo := 0 to ListBox1.Items.Count-1 do
  167.                           begin
  168.                             qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBox1.Items.Strings[xAnexo]);
  169.                             try
  170.                               qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
  171.                             except
  172.                              sair:=True;
  173.                              TThread.Synchronize(myThread, procedure
  174.                                begin
  175.                                  ShowMessage('Erro ao Cadastrar Anexo(s).');
  176.                                end);
  177.                             end;
  178.                           end;
  179.                       end;
  180.                   end;
  181.   //---------— TÉRMINO EMAIL PARA O PROPRIETÁRIO
  182.              TThread.Synchronize(myThread, procedure
  183.                begin
  184.                  ListBox1.Items.Clear;
  185.                  ListBoxAssociacao.Items.Clear;
  186.                end);
  187.               laudos:='';
  188.             end
  189.           else
  190.             begin
  191.               if (frmSeleciona_Envia_Placas <> nil) then
  192.                 begin
  193.                   qryfbs_amostra_dnaX.SQL.Add(' and (fbs_amostra_dna.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+') ');
  194.                 end
  195.               else
  196.                 begin
  197.  
  198. MetroScience, [01.04.18 19:24]
  199. [In reply to Carlos Dias Da silva Delphi Developer]
  200. qryfbs_amostra_dnaX.SQL.Add(' and (fbs_amostra_dna.especie_i_cod='+qryfbs_amostra_dnaESPECIE_I_COD.AsString+') ');
  201.                 end;
  202.  
  203.               qryfbs_amostra_dnaX.SQL.Add('order by  fbs_clientes.cli_a_rsoc, fbs_amostra_dna.amostra_dna_i_amostra, fbs_amostra_dna.AMOSTRA_A_ENTREGUE');
  204.               qryfbs_amostra_dnaX.Prepare;
  205.               qryfbs_amostra_dnaX.open();
  206.               NomeRelatorio:=Trim('Rel_'+qryEmailCliente.parambyname('cod').AsString+'_'+TiraAcento(datetostr(Date))+'_'+TiraAcento(timetostr(Time))+'.pdf');
  207. //              TThread.Synchronize(myThread, procedure
  208. //               begin
  209.                   qrpSimples.Prepare;
  210.                   qrpSimples.ExportToFilter(TQRPDFDocumentFilter.Create(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio)));
  211. //               end);
  212.               incompativeis:=false;
  213.               qryfbs_amostra_dnaX.First;
  214.               while not qryfbs_amostra_dnaX.Eof do
  215.                 begin
  216.                   if (qryfbs_amostra_dnaXRESULT_I_COD.AsInteger=2) then
  217.                     incompativeis:=true;
  218.  
  219.                   qryfbs_amostra_dnaX.Next;
  220.                 end;
  221.               qryfbs_amostra_dnaX.close;
  222.               codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
  223.  
  224.               qryEmailCliente.close;
  225.               qryEmailCliente.open;
  226.               if (Trim(qryEmailClienteDNA_A_EMAIL_RACA.Text) = '') then
  227.                 emailassociacao:=qryEmailClienteDNA_A_EMAIL.AsString
  228.               else
  229.                 emailassociacao:=qryEmailClienteDNA_A_EMAIL_RACA.AsString;
  230.  
  231.               TThread.Synchronize(myThread, procedure
  232.                 begin
  233.                   lblinformacao.Caption:='Enviando Email para o Proprietário.';
  234.                   ListBox1.Items.Add(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio);
  235.                 end);
  236.   //---------— INICIO EMAIL PARA O PROPRIETÁRIO
  237.               ASSUNTOEMAIL:='';
  238.               FOR I:=1 to Length(qryfbs_param_email_laudosASSUNTO_A_RELATORIO.AsString) do
  239.                 begin
  240.                   IF (COPY(qryfbs_param_email_laudosASSUNTO_A_RELATORIO.AsString,I,1)<>'#') then
  241.                     ASSUNTOEMAIL:=ASSUNTOEMAIL+COPY(qryfbs_param_email_laudosASSUNTO_A_RELATORIO.AsString,i,1)
  242.                   else
  243.                     ASSUNTOEMAIL:=ASSUNTOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  244.                 end;
  245.                 qryCORPOEMAIL.Open;
  246.                 CORPODOEMAIL:='';
  247.                 if (incompativeis=True) then
  248.                   FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString) do
  249.                     begin
  250.                       IF (COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,I,1)<>'#') then
  251.                         CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,i,1)
  252.                       else
  253.                         CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  254.                     end
  255.                 else
  256.                 if (temLaudo=false) then
  257.                   begin
  258.                     FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString) do
  259.                       begin
  260.                         IF (COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,I,1)<>'#') then
  261.                           CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,i,1)
  262.                         else
  263.                           CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  264.                       end
  265.                   end
  266.                 else
  267.                   FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL.AsString) do
  268.                     begin
  269.                       IF (COPY(qryCORPOEMAILCORPO_EMAIL.AsString,I,1)<>'#') then
  270.                         CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL.AsString,i,1)
  271.                       else
  272.                         CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  273.                     end;
  274.                 qryCORPOEMAIL.CLOSE;
  275.               if (ListBox1.Items.Text<>'') then
  276.                   begin
  277.  
  278. MetroScience, [01.04.18 19:24]
  279. [In reply to Carlos Dias Da silva Delphi Developer]
  280. if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  281.                                       qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryEmailClienteCLI_A_EMAIL3.AsString,
  282.                                       qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  283.                                       '', '', ListBox1)=false) then
  284.                      TThread.Synchronize(myThread, procedure
  285.                        begin
  286.                           ShowMessage('Erro ao inserir email...')
  287.                        end)
  288.                     else
  289.                       begin
  290.         //                qryAmostra_Enviada_PROPRIETARIO.EXECSQL;
  291.         //                  qryAmostra_Enviada_PROPRIETARIO.EXECSQL;
  292.                         qrysp_gen_fbs_email_enviado_id.close;
  293.                         qrysp_gen_fbs_email_enviado_id.Open;
  294.  
  295.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
  296.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='P';
  297.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
  298.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
  299.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=qryEmailClienteCLI_A_EMAIL3.AsString;
  300.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL+'';
  301.                         qryCORPOEMAIL.Open;
  302.                         qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
  303.                         qryCORPOEMAIL.CLOSE;
  304.                         try
  305.                          qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
  306.                         except
  307.                          sair:=True;
  308.                          TThread.Synchronize(myThread, procedure
  309.                            begin
  310.                              ShowMessage('Erro ao Cadastrar Email em Tabela.');
  311.                            end);
  312.                         end;
  313.                         qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
  314.                         qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
  315.                         qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
  316.                         for xAnexo := 0 to ListBox1.Items.Count-1 do
  317.                           begin
  318.                             qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBox1.Items.Strings[xAnexo]);
  319.                             try
  320.                               qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
  321.                             except
  322.                              sair:=True;
  323.                              TThread.Synchronize(myThread, procedure
  324.                                begin
  325.                                  ShowMessage('Erro ao Cadastrar Anexo(s).');
  326.                                end);
  327.                             end;
  328.  
  329. MetroScience, [01.04.18 19:24]
  330. [In reply to Carlos Dias Da silva Delphi Developer]
  331. qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  332.                                 qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_CC.AsString, '', lstXML)=false) then
  333.                    TThread.Synchronize(myThread, procedure
  334.                      begin
  335.                        ShowMessage('Erro ao inserir email...');
  336.                      end);
  337.               end;
  338.           end;
  339.  
  340.         qryfbs_amostra_dna.Refresh;
  341.         TThread.Synchronize(myThread, procedure
  342.           begin
  343.             Caption:=Caption+'   -   Término  '+timetostr(Time);
  344.             ActivityIndicator.Animate:=false;
  345.           end);
  346.       except
  347.         TThread.Synchronize(myThread, procedure
  348.           begin
  349.             ActivityIndicator.Animate:=false;
  350.           end);
  351.         sair:=True;
  352.       end;
  353.         TThread.Synchronize(myThread, procedure
  354.           begin
  355.             ActivityIndicator.Animate:=false;
  356.           end);
  357.         sair:=True;
  358.     end);
  359.  
  360.   myThread.FreeOnTerminate:=True;
  361.   myThread.start();
  362.  
  363. MetroScience, [01.04.18 19:24]
  364. [In reply to Carlos Dias Da silva Delphi Developer]
  365. if (ListBox1.Items.Strings[xAnexo]=qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio) then
  366.                               begin
  367.                                 destino:=qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+NomeRelatorio;
  368.                               end
  369.                             else
  370.                               begin
  371.                                 aj:='';
  372.                                 I:=4;
  373.                                 repeat
  374.                                   aj:=aj+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1);
  375.                                   Inc(I);
  376.                                 until (Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1)='_');
  377.                                 destino:=Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),1,3)+ExtractFileName(aj)+'.pdf');
  378.                               end;
  379.                             origem:=ListBox1.Items.Strings[xAnexo];
  380.                             if not FileExists(destino) then
  381.                               if not CopyFile(PChar(Origem), PChar(Destino), true) then
  382.                                 TThread.Synchronize(myThread, procedure
  383.                                   begin
  384.                                      mmoEroosEmail.Lines.Add('Erro ao copiar ' + Origem + ' —> '+ Destino);
  385.                                   end);
  386.                           end;
  387.                       end;
  388.                   end;
  389.         //---------— TÉRMINO EMAIL PARA O PROPRIETÁRIO
  390.                    TThread.Synchronize(myThread, procedure
  391.                      begin
  392.                         ListBox1.Items.Clear;
  393.                         ListBoxAssociacao.Items.Clear;
  394.                      end);
  395.                     laudos:='';
  396.  
  397.                     qryfbs_amostra_dnaX.close;
  398.                     qryfbs_amostra_dnaX.SQL.Clear;
  399.                     qryfbs_amostra_dnaX.SQL:=qrytmpConsultaLaudoGeral.SQL;
  400.  
  401.                     qryfbs_amostra_dnaX.SQL.Add('where (fbs_animal.especie_i_cod=' + IntToStr(especie) + ') and  (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
  402.                     codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
  403.             end;
  404.         if (qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOXLS_A_SEMPRE.AsString='S') and (qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCOUNT.AsInteger=1) and (sqlabqmenviado=false) then
  405.           begin
  406.             sqlabqmenviado:=true;
  407.             TThread.Synchronize(myThread, procedure
  408.               begin
  409.                 lstXML.Items.Clear;
  410.                 lstXML.Items.Add(nomearquivoxls);
  411.               end);
  412.             ASSUNTOEMAIL:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOASSUNTOEMAIL.AsString;
  413.             CORPODOEMAIL:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCORPODOEMAIL.AsString;
  414.             if (qryfbs_amostra_dnaENVIA_LAUDO_PDF.AsString='S') then
  415.               begin
  416.                 if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  417.                                   qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString,
  418.                                   qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  419.                                   qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_CC.AsString, '', ListBoxAssociacao)=false) then
  420.                    TThread.Synchronize(myThread, procedure
  421.                      begin
  422.                        ShowMessage('Erro ao inserir email...');
  423.                      end);
  424.                 if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  425.                                 qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString,
  426.  
  427. MetroScience, [01.04.18 19:24]
  428. [In reply to Carlos Dias Da silva Delphi Developer]
  429. ASSUNTOEMAIL:='';
  430.                   FOR I:=1 to Length(qryfbs_param_email_laudosASSUNTO_A_RELATORIO.AsString) do
  431.                     begin
  432.                       IF (COPY(qryfbs_param_email_laudosASSUNTO_A_RELATORIO.AsString,I,1)<>'#') then
  433.                         ASSUNTOEMAIL:=ASSUNTOEMAIL+COPY(qryfbs_param_email_laudosASSUNTO_A_RELATORIO.AsString,i,1)
  434.                       else
  435.                         ASSUNTOEMAIL:=ASSUNTOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  436.                     end;
  437.                   qryCORPOEMAIL.Open;
  438.                   CORPODOEMAIL:='';
  439.                   if (incompativeis=True) then
  440.                     FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString) do
  441.                       begin
  442.                         IF (COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,I,1)<>'#') then
  443.                           CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,i,1)
  444.                         else
  445.                           CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  446.                       end
  447.                   else
  448.                   if (temLaudo=false) then
  449.                     begin
  450.                       FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString) do
  451.                         begin
  452.                           IF (COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,I,1)<>'#') then
  453.                             CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,i,1)
  454.                           else
  455.                             CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  456.                         end
  457.                     end
  458.                   else
  459.                     FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL.AsString) do
  460.                       begin
  461.                         IF (COPY(qryCORPOEMAILCORPO_EMAIL.AsString,I,1)<>'#') then
  462.                           CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL.AsString,i,1)
  463.                         else
  464.                           CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  465.                       end;
  466.  
  467.                   if (Copy(ExtractFileName(listbox1.Items.Strings[0]),1,3)='Rel') then
  468.                   else
  469.                   if (Trim(qryfbs_email_saidaLAUDOS_MAPA_A_EMAIL.AsString)<>'') then
  470.                     if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  471.                                       qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryfbs_email_saidaLAUDOS_MAPA_A_EMAIL.AsString,
  472.                                       qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  473.                                       '', '', ListBox1)=false) then
  474.                        TThread.Synchronize(myThread, procedure
  475.                          begin
  476.                            ShowMessage('Erro ao inserir email...');
  477.                          end);
  478.  
  479.  
  480.                   TThread.Synchronize(myThread, procedure
  481.                     begin
  482.                       lblinformacao.Caption:='Enviando Email para o Proprietário.';
  483.                       ListBox1.Items.Add(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio);
  484.                     end);
  485.  
  486. MetroScience, [01.04.18 19:24]
  487. [In reply to Carlos Dias Da silva Delphi Developer]
  488. qryAmostra_Enviada_ABCZ.EXECSQL;
  489.                           origem:=ListBoxAssociacao.Items.Strings[xAnexo];
  490.                           destino:=Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),1,3)+ExtractFileName(aj)+'.pdf');
  491.                         end;
  492.                       qrysp_gen_fbs_email_enviado_id.close;
  493.                       qrysp_gen_fbs_email_enviado_id.Open;
  494.  
  495.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
  496.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='A';
  497.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
  498.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
  499.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=emailassociacao;
  500.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL+'';
  501.                       qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
  502.                       try
  503.                        qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
  504.                       except
  505.                        sair:=True;
  506.                        TThread.Synchronize(myThread, procedure
  507.                          begin
  508.                            ShowMessage('Erro ao Cadastrar Email em Tabela.');
  509.                          end);
  510.                       end;
  511.                       qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
  512.                       qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
  513.                       qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
  514.                       for xAnexo := 0 to ListBoxAssociacao.Items.Count-1 do
  515.                         begin
  516.                           qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]);
  517.                           try
  518.                             qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
  519.                           except
  520.   //                          ShowMessage('Erro ao Cadastrar Anexo(s).');
  521.                           end;
  522.                         end;
  523.                     end;
  524.   //---------— TÉRMINO EMAIL PARA ABCZ
  525.                 ASSUNTOEMAIL:='';
  526.                 FOR I:=1 to Length(qryfbs_param_email_laudosASSUNTO_A_CLIENTE.AsString) do
  527.                   begin
  528.                     IF (COPY(qryfbs_param_email_laudosASSUNTO_A_CLIENTE.AsString,I,1)<>'#') then
  529.                       ASSUNTOEMAIL:=ASSUNTOEMAIL+COPY(qryfbs_param_email_laudosASSUNTO_A_CLIENTE.AsString,i,1)
  530.                     else
  531.                       ASSUNTOEMAIL:=ASSUNTOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  532.                   end;
  533.                 qryCORPOEMAIL.Open;
  534.                 CORPODOEMAIL:='';
  535.                 if (incompativeis=True) then
  536.                   FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString) do
  537.                     begin
  538.                       IF (COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,I,1)<>'#') then
  539.                         CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,i,1)
  540.                       else
  541.                         CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  542.                     end
  543.                 else
  544.                 if (temLaudo=false) then
  545.                   begin
  546.                     FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString) do
  547.                       begin
  548.                         IF (COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,I,1)<>'#') then
  549.  
  550. MetroScience, [01.04.18 19:24]
  551. [In reply to Carlos Dias Da silva Delphi Developer]
  552. if (ListBox1.Items.Strings[xAnexo]=qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio) then
  553.                               begin
  554.                                 destino:=qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+NomeRelatorio;
  555.                               end
  556.                             else
  557.                               begin
  558.                                 aj:='';
  559.                                 I:=4;
  560.                                 repeat
  561.                                   aj:=aj+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1);
  562.                                   Inc(I);
  563.                                 until (Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1)='_');
  564.                                 destino:=Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),1,3)+ExtractFileName(aj)+'.pdf');
  565.                               end;
  566.                             origem:=ListBox1.Items.Strings[xAnexo];
  567.                             if not FileExists(destino) then
  568.                               if not CopyFile(PChar(Origem), PChar(Destino), true) then
  569.                                 TThread.Synchronize(myThread, procedure
  570.                                   begin
  571.                                     mmoEroosEmail.Lines.Add('Erro ao copiar ' + Origem + ' —> '+ Destino);
  572.                                    end);
  573.                           end;
  574.                       end;
  575.                   end;
  576.     //---------— TÉRMINO EMAIL PARA O PROPRIETÁRIO
  577.                  TThread.Synchronize(myThread, procedure
  578.                    begin
  579.                      ListBox1.Items.Clear;
  580.                      ListBoxAssociacao.Items.Clear;
  581.                    end);
  582.                   laudos:='';
  583.                   qryfbs_amostra_dnaX.close;
  584.                   qryfbs_amostra_dnaX.SQL.Clear;
  585.                   qryfbs_amostra_dnaX.SQL:=qrytmpConsultaLaudoGeral.SQL;
  586.                   qryfbs_amostra_dnaX.SQL.Add('where (fbs_animal.especie_i_cod=' + IntToStr(especie) + ') and  (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
  587.                   codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
  588.                 end;
  589.           end;
  590.           if (qryfbs_amostra_dnaAMOSTRA_A_CONCLUIDO.AsString='S') AND (qryfbs_amostra_dnaAMOSTRA_A_ENVIADO_PROPRIETARIO.AsString<>'S') and
  591.              (qryfbs_amostra_dnaAMOSTRA_A_ENVIADO_ABCZ.AsString<>'S') then
  592.               begin
  593.                 qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOUNID.AsInteger;
  594.                 qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
  595.                 qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.ASINTEGER;
  596.                 qryAmostra_Enviada_PROPRIETARIO.ParamByName('AMOSTRA').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.ASINTEGER;
  597.               end;
  598.           IF (ListBox1.Items.Text<>'') then //(codigoprorietario=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger) and
  599.             begin                                        //    7z a -t7z back.7z C:\*
  600.               qryfbs_amostra_dnaX.SQL.Add(' and (fbs_amostra_dna.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+') ');
  601.  
  602. MetroScience, [01.04.18 19:24]
  603. [In reply to Carlos Dias Da silva Delphi Developer]
  604. qryfbs_amostra_dnaX.SQL.Add('order by  fbs_clientes.cli_a_rsoc, fbs_amostra_dna.amostra_dna_i_amostra, fbs_amostra_dna.AMOSTRA_A_ENTREGUE');
  605.               qryfbs_amostra_dnaX.Prepare;
  606.               qryfbs_amostra_dnaX.open();
  607.               NomeRelatorio:=Trim('Rel_'+qryEmailCliente.parambyname('cod').AsString+'_'+TiraAcento(datetostr(Date))+'_'+TiraAcento(timetostr(Time))+'.pdf');
  608. //              TThread.Synchronize(myThread, procedure
  609. //               begin
  610.                   qrpSimples.Prepare;
  611.                   qrpSimples.ExportToFilter(TQRPDFDocumentFilter.Create(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio)));
  612. //                end);
  613.               incompativeis:=false;
  614.               qryfbs_amostra_dnaX.First;
  615.               while not qryfbs_amostra_dnaX.Eof do
  616.                 begin
  617.                   if (qryfbs_amostra_dnaXRESULT_I_COD.AsInteger=2) then
  618.                     incompativeis:=true;
  619.  
  620.                   qryfbs_amostra_dnaX.Next;
  621.                 end;
  622.               qryfbs_amostra_dnaX.close;
  623.  
  624.               codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
  625.               qryEmailCliente.close;
  626.               qryEmailCliente.open;
  627.               if (Trim(qryEmailClienteDNA_A_EMAIL_RACA.Text) = '') then
  628.                 emailassociacao:=qryEmailClienteDNA_A_EMAIL.AsString
  629.               else
  630.                 emailassociacao:=qryEmailClienteDNA_A_EMAIL_RACA.AsString;
  631.  
  632.              TThread.Synchronize(myThread, procedure
  633.                begin
  634.                   lblinformacao.Caption:='Enviando Email para a Associação.';
  635.                end);
  636.  
  637.   //---------— INICIO EMAIL PARA ABCZ
  638.                 qryCORPOEMAILABCZ.Open;
  639.                 CORPODOEMAIL:='';
  640.                 FOR I:=1 to Length(qryCORPOEMAILABCZCORPO_EMAIL_ABCZ.AsString) do
  641.                   begin
  642.                     IF (COPY(qryCORPOEMAILABCZCORPO_EMAIL_ABCZ.AsString,I,1)<>'#') then
  643.                       CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILABCZCORPO_EMAIL_ABCZ.AsString,i,1)
  644.                     else
  645.                       CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  646.                   end;
  647.                 qryCORPOEMAILABCZ.CLOSE;
  648.                 ASSUNTOEMAIL:='';
  649.                 FOR I:=1 to Length(qryfbs_param_email_laudosASSUNTO_A_ABCZ.AsString) do
  650.                   begin
  651.                     IF (COPY(qryfbs_param_email_laudosASSUNTO_A_ABCZ.AsString,I,1)<>'#') then
  652.                       ASSUNTOEMAIL:=ASSUNTOEMAIL+COPY(qryfbs_param_email_laudosASSUNTO_A_ABCZ.AsString,i,1)
  653.                     else
  654.                       ASSUNTOEMAIL:=ASSUNTOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
  655.                   end;
  656.  
  657. MetroScience, [01.04.18 19:24]
  658. [In reply to Carlos Dias Da silva Delphi Developer]
  659. if (ListBoxAssociacao.Items.Text<>'') then
  660.                   if (qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCOUNT.AsInteger=1) and (sqlabqmenviado=false) then
  661.                     begin
  662.                       sqlabqmenviado:=true;
  663.                       TThread.Synchronize(myThread, procedure
  664.                         begin
  665.                           ListBoxAssociacao.Items.Add(nomearquivoxls);
  666.                           lstXML.Items.Clear;
  667.                           lstXML.Items.Add(nomearquivoxls);
  668.                         end);
  669.                       ASSUNTOEMAIL:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOASSUNTOEMAIL.AsString;
  670.                       CORPODOEMAIL:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCORPODOEMAIL.AsString;
  671.                       if (qryfbs_amostra_dnaENVIA_LAUDO_PDF.AsString='S') then
  672.                         begin
  673.                           if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  674.                                             qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString,
  675.                                             qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  676.                                             qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_CC.AsString, '', ListBoxAssociacao)=false) then
  677.                              TThread.Synchronize(myThread, procedure
  678.                                begin
  679.                                  ShowMessage('Erro ao inserir email...');
  680.                                end);
  681.                         end
  682.                       else
  683.                         if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
  684.                                           qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString,
  685.                                           qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
  686.                                           qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_CC.AsString, '', lstXML)=false) then
  687.                              TThread.Synchronize(myThread, procedure
  688.                                begin
  689.                                  ShowMessage('Erro ao inserir email...');
  690.                                end)
  691.                       else
  692.                         begin
  693.                           if (ListBoxAssociacao.Items.Count>0) then
  694.                             for xAnexo := 0 to ListBoxAssociacao.Items.Count-2 do
  695.                               begin
  696.                                 aj:='';
  697.                                 I:=4;
  698.                                 repeat
  699.                                   aj:=aj+Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1);
  700.                                   Inc(I);
  701.                                 until (Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1)='_');
  702.                                 try
  703.                                   qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(AJ);
  704.                                 except
  705.                                   qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(Copy(AJ,4,Length(AJ)-3));
  706.                                 end;
  707.  
  708.                                 qryAmostra_Enviada_ABCZ.EXECSQL;
  709.                               end
  710.                           else
  711.                             begin
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement