Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- myThread := TThread.CreateAnonymousThread( procedure
- var order: string[50];
- concluidas,naoconcluidas,codigoprorietario,I,xAnexo, iIndice, Ia:Integer;
- origem,destino,laudos,CORPODOEMAIL,ASSUNTOEMAIL,AJ,emailassociacao:string;
- SR: TSearchRec;
- ok,incompativeis, Samostra:Boolean;
- zero,temLaudo:Boolean;
- StringGrid1: TStringGrid;
- begin
- try
- //------------------------------------------------------------------------------
- StringGrid1:= TStringGrid.Create(Nil);
- XlsToStringGrid(StringGrid1,ListBox0.Items.Strings[0]);
- lstamostras.Items.Clear;
- qryfbs_amostra_dna.Close;
- qryfbs_amostra_dna.SQL:=qryAjuda.SQL;
- qryfbs_amostra_dna.SQL.Add(' and ((fbs_amostra_dna.amostra_dna_i_amostra='+StringGrid1.Cells[1,2]+')');
- qryfbs_param_esp_assoc_racas.SQL.Add(' and ((fbs_amostra_dna.amostra_dna_i_amostra='+StringGrid1.Cells[1,2]+')');
- fbs_amostra_dna0.SQL.Add(' and ((fbs_amostra_dna.amostra_dna_i_amostra='+StringGrid1.Cells[1,2]+')');
- qryGET_LAUDO.close;
- qryGET_LAUDO.SQL:=qryLaudoIntervalo.SQL;
- qryGET_LAUDO.SQL.Add(' ((a.amostra_dna_i_amostra='+StringGrid1.Cells[1,2]+')');
- for xAnexo := 0 to ListBox0.Items.Count-1 do
- begin
- //------— Filtrar por Planilha de Importação
- StringGrid1.FreeOnRelease;
- XlsToStringGrid(StringGrid1,ListBox0.Items.Strings[xAnexo]);
- For iIndice := 3 to StringGrid1.RowCount -2 do
- begin
- Samostra:=false;
- for Ia :=0 to lstamostras.Items.Count -1 do
- begin
- if (lstamostras.Items.Strings[Ia] = StringGrid1.Cells[1,iIndice]) then
- begin
- Samostra:=True;
- end;
- end;
- if (Samostra=False) then
- begin
- TThread.Synchronize(myThread, procedure
- begin
- lstamostras.Items.Add(StringGrid1.Cells[1,iIndice]);
- end);
- qryfbs_amostra_dna.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+StringGrid1.Cells[1,iIndice]+')');
- qryfbs_param_esp_assoc_racas.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+StringGrid1.Cells[1,iIndice]+')');
- fbs_amostra_dna0.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+StringGrid1.Cells[1,iIndice]+')');
- qryGET_LAUDO.SQL.Add(' or (a.amostra_dna_i_amostra='+StringGrid1.Cells[1,iIndice]+')');
- qryFilhos.close;
- qryFilhos.ParamByName('amostra').AsInteger:=StrToInt(StringGrid1.Cells[1,iIndice]);
- qryFilhos.ParamByName('especie').AsInteger:=qryFBS_ESPECIE0ESPECIE_I_COD.AsInteger;
- qryFilhos.Open;
- while not qryFilhos.Eof do
- begin
- Samostra:=false;
- for Ia :=0 to lstamostras.Items.Count -1 do
- begin
- if (lstamostras.Items.Strings[Ia] = qryFilhosAMOSTRASAIDA.AsString) then
- begin
- Samostra:=True;
- end;
- end;
- if (Samostra=False) then
- begin
- TThread.Synchronize(myThread, procedure
- begin
- lstamostras.Items.Add(qryFilhosAMOSTRASAIDA.AsString);
- end);
- qryfbs_amostra_dna.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryFilhosAMOSTRASAIDA.AsString+')');
- qryGET_LAUDO.SQL.Add(' or (a.amostra_dna_i_amostra='+qryFilhosAMOSTRASAIDA.AsString+')');
- end
- else
- begin
- end;
- qryFilhos.Next;
- end;
- end
- else
- begin
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryFilhos.close;
- qryFilhos.ParamByName('amostra').AsInteger:=StrToInt(StringGrid1.Cells[1,iIndice]);
- qryFilhos.ParamByName('especie').AsInteger:=qryFBS_ESPECIE0ESPECIE_I_COD.AsInteger;
- qryFilhos.Open;
- while not qryFilhos.Eof do
- begin
- Samostra:=false;
- for Ia :=0 to lstamostras.Items.Count -1 do
- begin
- if (lstamostras.Items.Strings[Ia] = qryFilhosAMOSTRASAIDA.AsString) then
- begin
- Samostra:=True;
- end;
- end;
- if (Samostra=False) then
- begin
- TThread.Synchronize(myThread, procedure
- begin
- lstamostras.Items.Add(qryFilhosAMOSTRASAIDA.AsString);
- end);
- qryfbs_amostra_dna.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryFilhosAMOSTRASAIDA.AsString+')');
- qryGET_LAUDO.SQL.Add(' or (a.amostra_dna_i_amostra='+qryFilhosAMOSTRASAIDA.AsString+')');
- end
- else
- begin
- end;
- qryFilhos.Next;
- end;
- end;
- //------— Filtrar por Planilha de Importação
- end;
- qryfbs_amostra_dna.SQL.Add(') and (fbs_animal.cli_i_cod_p<>0) and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_PROPRIETARIO='+QuotedStr('N')+') and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_ABCZ='+QuotedStr('N')+')');
- qryfbs_param_esp_assoc_racas.SQL.Add(') and (fbs_animal.cli_i_cod_p<>0) and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_PROPRIETARIO='+QuotedStr('N')+') and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_ABCZ='+QuotedStr('N')+')');
- qryabqm.SQL.Add(' and (fbs_animal.cli_i_cod_p<>0) and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_PROPRIETARIO='+QuotedStr('N')+') and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_ABCZ='+QuotedStr('N')+')');
- fbs_amostra_dna0.SQL.Add(') and (fbs_amostra_dna.amostra_a_concluido='+QuotedStr('N')+')');
- //ESPECIE
- qryfbs_amostra_dna.SQL.Add(' and (fbs_animal.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+')');
- qryfbs_amostra_dna.SQL.Add(' and not((fbs_animal.animal_a_status='+quotedstr('A')+') and (fbs_animal.animal_n_valor=0))');
- qryfbs_amostra_dna.SQL.Text:=qryfbs_amostra_dna.SQL.Text+qryAjuda2.SQL.text;
- qryfbs_amostra_dna.SQL.Add('order by fbs_clientes.cli_a_rsoc, fbs_animal.cli_i_cod_p, fbs_amostra_dna.amostra_dna_i_amostra');
- qryfbs_param_esp_assoc_racas.SQL.Add(' and (fbs_animal.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+')');
- qryfbs_param_esp_assoc_racas.Open;
- zero:=false;
- if (qryfbs_param_esp_assoc_racas.RecordCount>0) then
- begin
- qryabqm.SQL.Add(' and ((fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_param_esp_assoc_racasAMOSTRA_DNA_I_AMOSTRA.AsString+')');
- qryfbs_param_esp_assoc_racas.Next;
- while not qryfbs_param_esp_assoc_racas.eof do
- begin
- qryabqm.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_param_esp_assoc_racasAMOSTRA_DNA_I_AMOSTRA.AsString+')');
- qryfbs_param_esp_assoc_racas.Next;
- end;
- zero:=True;
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- fbs_amostra_dna0.SQL.Add('order by fbs_clientes.cli_a_rsoc, fbs_animal.cli_i_cod_p, fbs_amostra_dna.amostra_dna_i_amostra');
- fbs_amostra_dna0.SQL.Add('WHERE (fbs_animal.especie_i_cod=:especie)');
- // fbs_amostra_dna0.CmdSelect:=fbs_amostra_dna0.SQL.Text;
- //ESPECIE
- qryGET_LAUDO.SQL.Add(') and (b.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+')');
- qryGET_LAUDO.SQL.Add(' and not((fbs_animal.animal_a_status='+quotedstr('A')+') and (fbs_animal.animal_n_valor=0))');
- qryGET_LAUDO.SQL.Add(' order by a.amostra_dna_i_amostra');
- // qryfbs_amostra_dna.CmdSelect:=qryfbs_amostra_dna.SQL.Text;
- fbs_amostra_dna0.ParamByName('especie').AsInteger:=qryFBS_ESPECIE0ESPECIE_I_COD.AsInteger;
- // Memo1.Lines.Text:=qryfbs_amostra_dna.SQL.Text;
- qryfbs_amostra_dna.Prepare;
- filhos:=false;
- qryfbs_amostra_dna.open();
- //------------------------------------------------------------------------------
- sqlabqmenviado:=false;
- if (especie=0) then
- especie:=qryfbs_amostra_dnaESPECIE_I_COD.asinteger;
- qryFBS_PARAM_ESPECIE_ASSOCIACAO.close;
- qryFBS_PARAM_ESPECIE_ASSOCIACAO.ParamByName('especie').asinteger:=qryfbs_amostra_dnaESPECIE_I_COD.asinteger;
- qryFBS_PARAM_ESPECIE_ASSOCIACAO.open;
- qryfbs_email_saida.Close;
- qryfbs_email_saida.Open;
- qryfbs_param_email_laudos.CLOSE;
- qryfbs_param_email_laudos.Open;
- qryfbs_unidade.CLOSE;
- qryfbs_unidade.ParamByName('Unidade').AsInteger:=1;
- qryfbs_unidade.Open;
- Cabecalho_Linha1.Expression:='';
- for i:=1 to Length(qryfbs_unidadeUNID_A_CABECALHO_LINHA1.AsString) do
- begin
- if (Copy(qryfbs_unidadeUNID_A_CABECALHO_LINHA1.AsString,I,1)<>'"') then
- Cabecalho_Linha1.Expression:=Cabecalho_Linha1.Expression+copy(qryfbs_unidadeUNID_A_CABECALHO_LINHA1.AsString,I,1)
- else
- Cabecalho_Linha1.Expression:=Cabecalho_Linha1.Expression+'''';
- end;
- Cabecalho_Linha2.Expression:='';
- for i:=1 to Length(qryfbs_unidadeUNID_A_CABECALHO_LINHA2.AsString) do
- begin
- if (Copy(qryfbs_unidadeUNID_A_CABECALHO_LINHA2.AsString,I,1)<>'"') then
- Cabecalho_Linha2.Expression:=Cabecalho_Linha2.Expression+copy(qryfbs_unidadeUNID_A_CABECALHO_LINHA2.AsString,I,1)
- else
- Cabecalho_Linha2.Expression:=Cabecalho_Linha2.Expression+'''';
- end;
- qryEMAIL.Close;
- qryEMAIL.Open;
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAO.close;
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAO.ParamByName('especie').AsInteger:=especie;
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAO.ParamByName('unidade').AsInteger:=qryfbs_amostra_dnaUNID_I_COD.AsInteger;
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAO.open;
- qryfbs_amostra_dna.First;
- qryabqm.sql.clear;
- qryabqm.SQL.Text:=sqlabqm.Text;
- qryabqm.SQL.Add(' and ((fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+')');
- qryfbs_amostra_dna.Next;
- zero:=false;
- while not qryfbs_amostra_dna.eof do
- begin
- qryabqm.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+')');
- qryfbs_amostra_dna.Next;
- zero:=true;
- end;
- qryabqm.SQL.Add(') and (fbs_animal.cli_i_cod_p<>0) ');
- qryabqm.SQL.Add(' and (fbs_animal.especie_i_cod='+inttostr(especie)+')');
- qryabqm.SQL.Add(' and (AMOSTRA_A_CONCLUIDO='+QuotedStr('S')+')');
- // if(zero) then
- // begin
- // qryabqn.SQL.Add(') and (fbs_animal.cli_i_cod_p<>0) ');
- // qryabqn.SQL.Add(' and (fbs_animal.especie_i_cod='+inttostr(especie)+')');
- // end
- // else
- // begin
- // qryabqn.SQL.Add(' and (fbs_animal.cli_i_cod_p<>0) ');
- // qryabqn.SQL.Add(' and (fbs_animal.especie_i_cod='+inttostr(especie)+'))');
- // end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryGET_LAUDO.close;
- qryGET_LAUDO.SQL:=qryLaudo.SQL;
- qryGET_LAUDO.ParamByName('panimal_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_INI').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_FIN').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pamostra_dna_d_entrada').DataType:=ftDate;
- qryGET_LAUDO.ParamByName('pamostra_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pdna_status_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pdna_status_det_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pamostra_dna_d_saida').DataType:=ftDate;
- qryGET_LAUDO.ParamByName('panimal_d_nasc').DataType:=ftDate;
- qryGET_LAUDO.ParamByName('panimal_a_sexo').DataType:=ftString;
- qryGET_LAUDO.ParamByName('pespecie_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('praca_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('ptouro_animal_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pvaca_animal_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pcli_i_cod_p').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pcid_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pamostra_a_entregue').DataType:=ftString;
- qryGET_LAUDO.ParamByName('pcli_i_cod_p2').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('panimal_i_codpai').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('panimal_i_codmae').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('STATUS').DataType:=ftString;
- qryGET_LAUDO.ParamByName('concluido').DataType:=ftString;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- I := FindFirst(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\*.*', faAnyFile, SR);
- while I = 0 do
- begin
- if (SR.Attr and faDirectory) <> faDirectory then
- if not DeleteFile(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\' + SR.Name) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Não foi possível excluir '+qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\' + SR.Name);
- end);
- I := FindNext(SR);
- end;
- laudos:='';
- // frmConsultaAmostrasGeral.chkIntervalo.Checked:=True;
- // frmConsultaAmostrasGeral.edtInicio.Text:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString;
- qryfbs_resultconclui_abcz.Close;
- qryfbs_resultconclui_abcz.Open;
- qryfbs_resultconclui_laudo.close;
- qryfbs_resultconclui_laudo.Open;
- temLaudo:=False;
- while not qryfbs_amostra_dna.Eof do
- begin
- TThread.Synchronize(myThread, procedure
- begin
- lblinformacao.Caption:='Lendo Tabela de Amostras';
- end);
- if ((qryfbs_amostra_dnaAMOSTRA_A_CONCLUIDO.AsString='S') and
- (qryfbs_amostra_dnaAMOSTRA_A_ENVIADO_PROPRIETARIO.AsString<>'S') and
- (qryfbs_amostra_dnaAMOSTRA_A_ENVIADO_ABCZ.AsString<>'S')) then
- begin
- RGANIMAL:='';
- for i:=1 TO Length(qryfbs_amostra_dnaANIMAL_A_RG.AsString) do
- begin
- if (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'/') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'\') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'.') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>',') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>':') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'*') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'<') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'>') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'?') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'|') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'"') and
- (Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)<>'''') then
- RGANIMAL := RGANIMAL + Copy(qryfbs_amostra_dnaANIMAL_A_RG.AsString,I,1)
- else
- RGANIMAL := RGANIMAL + ' ';
- end;
- //---------------—
- qryEmailCliente.ParamByName('unid').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOUNID.AsInteger;
- qryEmailCliente.ParamByName('cod').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qryEmailCliente.ParamByName('especie').AsInteger:=qryfbs_amostra_dnaESPECIE_I_COD.AsInteger;
- qryEmailCliente.ParamByName('raca').AsInteger:=qryfbs_amostra_dnaRACA_I_COD.AsInteger;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryAtualizaExterno.ParamByName('animal').AsInteger:=qryfbs_amostra_dnaANIMAL_I_COD.AsInteger;
- qryAtualizaExterno.ParamByName('amostra').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- try
- qryAtualizaExterno.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao atualizar Amostra externa...');
- end);
- end;
- if not (FileExists(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf'))) then
- begin
- // laudos:=laudos+qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+qryfbs_amostra_dnaANIMAL_A_RG.AsString+'.pdf';
- qryGET_LAUDO.close;
- qryGET_LAUDO.SQL:=qryLaudo.SQL;
- qryGET_LAUDO.ParamByName('panimal_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_INI').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_FIN').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pamostra_dna_d_entrada').DataType:=ftDate;
- qryGET_LAUDO.ParamByName('pamostra_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pdna_status_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pdna_status_det_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pamostra_dna_d_saida').DataType:=ftDate;
- qryGET_LAUDO.ParamByName('panimal_d_nasc').DataType:=ftDate;
- qryGET_LAUDO.ParamByName('panimal_a_sexo').DataType:=ftString;
- qryGET_LAUDO.ParamByName('pespecie_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('praca_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('ptouro_animal_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pvaca_animal_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pcli_i_cod_p').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pcid_i_cod').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('pamostra_a_entregue').DataType:=ftString;
- qryGET_LAUDO.ParamByName('pcli_i_cod_p2').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('panimal_i_codpai').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('panimal_i_codmae').DataType:=ftInteger;
- qryGET_LAUDO.ParamByName('STATUS').DataType:=ftString;
- qryGET_LAUDO.ParamByName('concluido').DataType:=ftString;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryfbs_resultconclui_abcz.First;
- ok:=False;
- caminhoqrp:='1';
- while not qryfbs_resultconclui_abcz.eof do
- begin
- if (qryfbs_resultconclui_abczRESULT_I_COD.AsInteger = qryfbs_amostra_dnaRESULT_I_COD.AsInteger) then
- begin
- if (FileExists(Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'.pdf'))) then
- begin
- origem := Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'.pdf');
- destino := Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf');
- if not FileExists(destino) then
- if not CopyFile(PChar(Origem), PChar(Destino), true) then
- TThread.Synchronize(myThread, procedure
- begin
- mmoEroosEmail.Lines.Add('Erro ao copiar ' + Origem + ' —> '+ Destino);
- end);
- end
- else
- begin
- qryAtualizaExterno.ParamByName('unid').AsInteger:=qryfbs_amostra_dnaUNID_I_COD.AsInteger;
- qryAtualizaExterno.ParamByName('animal').AsInteger:=qryfbs_amostra_dnaANIMAL_I_COD.AsInteger;
- qryAtualizaExterno.ParamByName('amostra').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- if (caminhoqrp='1') then
- caminhoqrp:=Trim(qrycnti_parametrosPAR_A_CAMINHOQRP.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'_'+tiraacento(datetostr(Date))+'.qrp');
- qryInsereQrpLaudo.ParamByName('unid').AsInteger:=qryfbs_amostra_dnaUNID_I_COD.AsInteger;
- qryInsereQrpLaudo.ParamByName('animal').AsInteger:=qryfbs_amostra_dnaANIMAL_I_COD.AsInteger;
- qryInsereQrpLaudo.ParamByName('amostra').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- qryInsereQrpLaudo.ParamByName('data').AsDate:=Date;
- qryInsereQrpLaudo.ParamByName('usuario').AsString:='usuario';//_vLogin;
- qryInsereQrpLaudo.ParamByName('qrp').AsString:=caminhoqrp;
- try
- if (caminhoqrp<>'1') and (caminhoqrp<>'') then
- qryInsereQrpLaudo.ExecSQL;
- caminhoqrp:='';
- except
- TThread.Synchronize(myThread, procedure
- begin
- sair:=True;
- ShowMessage('Erro ao atualizar qrp na amostra...');
- end);
- end;
- try
- qryAtualizaExterno.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao atualizar Amostra externa...');
- end);
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_INI').Value:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_FIN').Value:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- qryGET_LAUDO.ParamByName('pespecie_i_cod').Value:=qryfbs_amostra_dnaESPECIE_I_COD.Value;
- qryGET_LAUDO.Open;
- qrpLaudo_Paterindade_Multiplos.DataSet:=qryGET_LAUDO;
- // TThread.Synchronize(myThread, procedure
- // begin
- // QRQRBarcode.BarcodeText:=MD5String(qryGET_LAUDORESPECIE_ANIMAL.AsString+qryGET_LAUDORRG_ANIMAL.AsString+
- // qryGET_LAUDORNOME_ANIMAL.AsString+qryGET_LAUDORAMOSTRA_ANIMAL.AsString);
- QRQRBarcode.BarcodeText:=THashSHA2.GetHashString(qryGET_LAUDORESPECIE_ANIMAL.AsString+qryGET_LAUDORRG_ANIMAL.AsString+
- qryGET_LAUDORNOME_ANIMAL.AsString+qryGET_LAUDORAMOSTRA_ANIMAL.AsString, SHA256);
- QRQRBarcode.Refresh;
- qrpLaudo_Paterindade_Multiplos.Prepare;
- qrpLaudo_Paterindade_Multiplos.ExportToFilter(TQRPDFDocumentFilter.Create(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf')));
- // end);
- caminhoqrp:=Trim(qrycnti_parametrosPAR_A_CAMINHOQRP.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryGET_LAUDORAMOSTRA_ANIMAL.AsString+'_'+qryGET_LAUDORRG_ANIMAL.AsString+'_'+tiraacento(datetostr(Date))+'.qrp');
- // qrpLaudo_Paterindade_Multiplos.Print.Save(caminhoqrp);
- end;
- TThread.Synchronize(myThread, procedure
- begin
- ListBoxAssociacao.Items.Add(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf'));
- end);
- ok:=True;
- end;
- qryfbs_resultconclui_abcz.Next;
- end;
- qryfbs_resultconclui_laudo.First;
- while not qryfbs_resultconclui_laudo.eof do
- begin
- if (qryfbs_resultconclui_laudoRESULT_I_COD.AsInteger = qryfbs_amostra_dnaRESULT_I_COD.AsInteger) then
- begin
- if (FileExists(Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'.pdf'))) then
- begin
- origem := Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'.pdf');
- destino := Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf');
- if not FileExists(destino) then
- if not CopyFile(PChar(Origem), PChar(Destino), true) then
- TThread.Synchronize(myThread, procedure
- begin
- mmoEroosEmail.Lines.Add('Erro ao copiar ' + Origem + ' —> '+ Destino);
- end);
- end
- else
- begin
- qryAtualizaExterno.ParamByName('unid').AsInteger:=qryfbs_amostra_dnaUNID_I_COD.AsInteger;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- // qryabqn.SQL.Add(' and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_PROPRIETARIO='+QuotedStr('N')+') and (fbs_amostra_dna.AMOSTRA_A_ENVIADO_ABCZ='+QuotedStr('N')+')');
- qryabqm.SQL.Add('order by fbs_clientes.cli_a_rsoc, fbs_animal.cli_i_cod_p, fbs_amostra_dna.amostra_dna_i_amostra');
- //
- // memo1.text:=qryabqn.SQL.Text;
- // pnlinformacoes.Visible:=True;
- // Memo1.Lines.clear;
- // Memo1.Lines.Text:=qryabqn.SQL.Text;
- //
- if (qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCOUNT.AsInteger=1) then
- begin
- // mmo1.Lines.Text:=qryabqn.SQL.Text;
- try
- qryabqm.Open;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao abrir qryabqm...');
- end);
- Abort;
- end;
- nomearquivoxls:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOPAR_A_CAMINHO_REL_AMOSTRAS.AsString+qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOUNID_A_NOME.AsString+'_'+TiraAcento(DateToStr(date))+'_'+TiraAcento(TimeToStr(Time))+'.xlsx';
- GerarExcel(nomearquivoxls,qryabqm);
- end;
- TThread.Synchronize(myThread, procedure
- begin
- ListBox1.Items.Clear;
- ListBoxAssociacao.Items.Clear;
- lblinformacao.Caption:='Ordenando Tabelas';
- lblinformacao.Caption:='Abrindo Consulta Amostra Geral';
- Gauge1.Progress:=0;
- Gauge1.MaxValue:=qryfbs_amostra_dna.RecordCount;
- lblcontador.Caption:=IntToStr(Gauge1.Progress)+' / '+IntToStr(Gauge1.MaxValue);
- end);
- // order:=qryfbs_amostra_dna.OrderBy;
- concluidas:=0;
- naoconcluidas:=0;
- // frmMain.actfrmConsultaAmostrasGeral.Execute;
- // frmConsultaAmostrasGeral.WindowState:=wsMinimized;
- // Application.ProcessMessages;
- qryfbs_amostra_dnaX.close;
- qryfbs_amostra_dnaX.SQL.Clear;
- // qryfbs_amostra_dnaX.CmdSelect:='';
- qryfbs_amostra_dnaX.SQL:=qrytmpConsultaLaudoGeral.SQL;
- // qryfbs_amostra_dnaX.SQL.Add('where (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
- qryfbs_amostra_dna.First;
- if (qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger<>0) then
- begin
- 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+') ');
- end
- else
- begin
- if not qryfbs_amostra_dna.IsEmpty then
- repeat
- qryfbs_amostra_dna.Next;
- TThread.Synchronize(myThread, procedure
- begin
- Gauge1.Progress:=Gauge1.Progress+1;
- lblcontador.Caption:=IntToStr(Gauge1.Progress)+' / '+IntToStr(Gauge1.MaxValue);
- end);
- if (qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger<>0) then
- begin
- 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+') ');
- end;
- // else
- // qryfbs_amostra_dnaX.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
- until (qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger<>0);
- end;
- codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qrycnti_parametros.Close;
- qrycnti_parametros.Open;
- TThread.Synchronize(myThread, procedure
- begin
- lblinformacao.Caption:='Apagando arquivos temporários';
- end);
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- QRQRBarcode.Refresh;
- qrpLaudo_Paterindade_Multiplos.Prepare;
- qrpLaudo_Paterindade_Multiplos.ExportToFilter(TQRPDFDocumentFilter.Create(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf')));
- // end);
- caminhoqrp:=Trim(qrycnti_parametrosPAR_A_CAMINHOQRP.AsString+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryGET_LAUDORAMOSTRA_ANIMAL.AsString+'_'+qryGET_LAUDORRG_ANIMAL.AsString+'_'+tiraacento(datetostr(Date))+'.qrp');
- // qrpLaudo_Paterindade_Multiplos.Print.Save(caminhoqrp);
- end;
- end;
- if (qryfbs_param_email_laudosMATRIZ_ZERO_ARQUIVO_ENVIA.AsString='N') then
- if (qryfbs_amostra_dnaANIMAL_A_STATUS.AsString='A') and (qryfbs_amostra_dnaSEXO.AsString='F') and (qryfbs_amostra_dnaANIMAL_N_VALOR.AsFloat=0) then
- else
- TThread.Synchronize(myThread, procedure
- begin
- ListBox1.Items.Add(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf'));
- end)
- else
- TThread.Synchronize(myThread, procedure
- begin
- ListBox1.Items.Add(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+'_'+RGANIMAL+'.pdf'));
- end);
- temLaudo:=true;
- end;
- qryfbs_resultconclui_laudo.Next;
- end;
- TThread.Synchronize(myThread, procedure
- begin
- SendMessage(ListBox1.Handle, WM_VSCROLL, SB_LINEDOWN, 0);
- end);
- // qryfbs_amostra_dnaX.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
- // frmConsultaAmostrasGeral.edtFim.Text:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- // qryGET_LAUDO.ParamByName('panimal_i_cod').Value:=NULL;//qryfbs_amostra_dnaANIMAL_I_COD.Value;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_INI').Value:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- qryGET_LAUDO.ParamByName('PAMOSTRA_DNA_I_AMOSTRA_FIN').Value:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsInteger;
- // qryGET_LAUDO.ParamByName('pamostra_dna_d_entrada').Value:=NULL;//qryfbs_amostra_dnaENTRADA.value;
- // qryGET_LAUDO.ParamByName('pamostra_i_cod').Value:=NULL;//qryfbs_amostra_dnaAMOSTRA_I_COD.Value;
- // qryGET_LAUDO.ParamByName('pdna_status_i_cod').Value:=NULL;//qryfbs_amostra_dnaDNA_STATUS_I_COD.Value;
- // qryGET_LAUDO.ParamByName('pdna_status_det_i_cod').Value:=NULL;//qryfbs_amostra_dnaDNA_STATUS_DET_I_COD.Value;
- // qryGET_LAUDO.ParamByName('pamostra_dna_d_saida').Value:=NULL;//qryfbs_amostra_dnaCONCLUSAO.Value;
- // qryGET_LAUDO.ParamByName('panimal_d_nasc').Value:=NULL;//qryfbs_amostra_dnaANIMAL_D_NASC.Value;
- // qryGET_LAUDO.ParamByName('panimal_a_sexo').Value:=NULL;//qryfbs_amostra_dnaSEXO.Value;
- qryGET_LAUDO.ParamByName('pespecie_i_cod').Value:=qryfbs_amostra_dnaESPECIE_I_COD.Value;
- // qryGET_LAUDO.ParamByName('praca_i_cod').Value:=NULL;//qryfbs_amostra_dnaRACA_I_COD.Value;
- // qryGET_LAUDO.ParamByName('ptouro_animal_i_cod').Value:=NULL;//qryfbs_amostra_dnaTOURO_ANIMAL_I_COD.Value;
- // qryGET_LAUDO.ParamByName('pvaca_animal_i_cod').Value:=NULL;//qryfbs_amostra_dnaVACA_ANIMAL_I_COD.Value;
- // qryGET_LAUDO.ParamByName('pcli_i_cod_p').Value:=NULL;//qryfbs_amostra_dnaPROPRIETARIOCOD.Value;
- // qryGET_LAUDO.ParamByName('pcid_i_cod').Value:=NULL;//qryfbs_amostra_dnaCIDADECOD.Value;
- // qryGET_LAUDO.ParamByName('pamostra_a_entregue').Value:=NULL;//qryfbs_amostra_dnaAMOSTRA_A_ENTREGUE.Value;
- // qryGET_LAUDO.ParamByName('pcli_i_cod_p2').Value:=NULL;//qryfbs_amostra_dnaCLI_I_COD_P2.Value;
- // qryGET_LAUDO.ParamByName('panimal_i_codpai').Value:=NULL;//qryfbs_amostra_dnaANIMAL_I_CODPAI.Value;
- // qryGET_LAUDO.ParamByName('panimal_i_codmae').Value:=NULL;//qryfbs_amostra_dnaANIMAL_I_CODMAE.Value;
- // qryGET_LAUDO.ParamByName('STATUS').value:=null;
- // qryGET_LAUDO.ParamByName('concluido').value:=null;
- qryGET_LAUDO.Open;
- //---------------—
- qrpLaudo_Paterindade_Multiplos.DataSet:=qryGET_LAUDO;
- // TThread.Synchronize(myThread, procedure
- // begin
- // QRQRBarcode.BarcodeText:=MD5String(qryGET_LAUDORESPECIE_ANIMAL.AsString+qryGET_LAUDORRG_ANIMAL.AsString+
- // qryGET_LAUDORNOME_ANIMAL.AsString+qryGET_LAUDORAMOSTRA_ANIMAL.AsString);
- QRQRBarcode.BarcodeText:=THashSHA2.GetHashString(qryGET_LAUDORESPECIE_ANIMAL.AsString+qryGET_LAUDORRG_ANIMAL.AsString+
- qryGET_LAUDORNOME_ANIMAL.AsString+qryGET_LAUDORAMOSTRA_ANIMAL.AsString, SHA256);
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryfbs_amostra_dnaX.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOUNID.AsInteger;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.ASINTEGER;
- qryAmostra_Enviada_PROPRIETARIO.ParamByName('AMOSTRA').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.ASINTEGER;
- // frmSeleciona_Envia_Placas.fbs_amostra_dna.Filtered:=False;
- // frmSelexciona_Envia_Placas.fbs_amostra_dna.Filter:='cli_i_cod_p='+qryfbs_amostra_dnaPROPRIETARIOCOD.AsString;
- if (qryfbs_amostra_dnaAMOSTRA_A_CONCLUIDO.AsString='S') then
- begin
- inc(concluidas);
- TThread.Synchronize(myThread, procedure
- begin
- mmoLaudosConcluidos.Lines.Add(qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString);
- lblconcluidas.Caption:=inttostr(concluidas)+' Amostras concluidas.';
- end);
- end
- else
- begin
- inc(naoconcluidas);
- TThread.Synchronize(myThread, procedure
- begin
- mmoLaudosNaoConcluidos.Lines.Add(qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString);
- lblnaoconcluidas.Caption:=inttostr(naoconcluidas)+' Amostras não concluidas.';
- end);
- end;
- end
- else
- begin
- qryfbs_amostra_dnaX.SQL.Add(' or (fbs_amostra_dna.amostra_dna_i_amostra='+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString+') ');
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOUNID.AsInteger;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qryAmostra_Enviada_PROPRIETARIO.ParamByName('AMOSTRA').AsInteger:=qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.ASINTEGER;
- qryEmailCliente.ParamByName('unid').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOUNID.AsInteger;
- qryEmailCliente.ParamByName('cod').AsInteger:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qryEmailCliente.ParamByName('especie').AsInteger:=qryfbs_amostra_dnaESPECIE_I_COD.AsInteger;
- qryEmailCliente.ParamByName('raca').AsInteger:=qryfbs_amostra_dnaRACA_I_COD.AsInteger;
- if (qryfbs_amostra_dnaAMOSTRA_A_CONCLUIDO.AsString='S') then
- begin
- inc(concluidas);
- TThread.Synchronize(myThread, procedure
- begin
- mmoLaudosConcluidos.Lines.Add(qryfbs_amostra_dnaESPECIE_A_SIGLA.AsString+qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString);
- lblconcluidas.Caption:=inttostr(concluidas)+' Amostras concluidas.';
- end);
- end
- else
- begin
- inc(naoconcluidas);
- TThread.Synchronize(myThread, procedure
- begin
- mmoLaudosNaoConcluidos.Lines.Add(qryfbs_amostra_dnaAMOSTRA_DNA_I_AMOSTRA.AsString);
- lblnaoconcluidas.Caption:=inttostr(naoconcluidas)+' Amostras não concluidas.';
- end);
- end;
- end;
- //---------------------------------—
- qryfbs_amostra_dna.Next;
- TThread.Synchronize(myThread, procedure
- begin
- Gauge1.Progress:=Gauge1.Progress+1;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- lblcontador.Caption:=IntToStr(Gauge1.Progress)+' / '+IntToStr(Gauge1.MaxValue);
- end);
- //---------------------------------—
- IF (codigoprorietario<>qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger) and (ListBox1.Items.Text<>'') THEN // and (qryfbs_amostra_dnaANIMAL_A_CONCLUIDO.AsString='S') then
- begin // 7z a -t7z back.7z C:\*
- qryfbs_amostra_dnaX.SQL.Add(' and (fbs_amostra_dna.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+') ');
- 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');
- qryfbs_amostra_dnaX.Prepare;
- qryfbs_amostra_dnaX.open();
- NomeRelatorio:=Trim('Rel_'+qryEmailCliente.parambyname('cod').AsString+'_'+TiraAcento(datetostr(Date))+'_'+TiraAcento(timetostr(Time))+'.pdf');
- // TThread.Synchronize(myThread, procedure
- // begin
- qrpSimples.Prepare;
- qrpSimples.ExportToFilter(TQRPDFDocumentFilter.Create(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio)));
- // end);
- incompativeis:=false;
- qryfbs_amostra_dnaX.First;
- while not qryfbs_amostra_dnaX.Eof do
- begin
- if (qryfbs_amostra_dnaXRESULT_I_COD.AsInteger=2) then
- incompativeis:=true;
- qryfbs_amostra_dnaX.Next;
- end;
- qryfbs_amostra_dnaX.close;
- codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qryEmailCliente.close;
- qryEmailCliente.open;
- if (Trim(qryEmailClienteDNA_A_EMAIL_RACA.Text) = '') then
- emailassociacao:=qryEmailClienteDNA_A_EMAIL.AsString
- else
- emailassociacao:=qryEmailClienteDNA_A_EMAIL_RACA.AsString;
- TThread.Synchronize(myThread, procedure
- begin
- lblinformacao.Caption:='Enviando Email para a Associação.';
- end);
- //---------— INICIO EMAIL PARA ABCZ
- qryCORPOEMAILABCZ.Open;
- CORPODOEMAIL:='';
- FOR I:=1 to Length(qryCORPOEMAILABCZCORPO_EMAIL_ABCZ.AsString) do
- begin
- IF (COPY(qryCORPOEMAILABCZCORPO_EMAIL_ABCZ.AsString,I,1)<>'#') then
- CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILABCZCORPO_EMAIL_ABCZ.AsString,i,1)
- else
- CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
- end;
- qryCORPOEMAILABCZ.Close;
- ASSUNTOEMAIL:='';
- FOR I:=1 to Length(qryfbs_param_email_laudosASSUNTO_A_ABCZ.AsString) do
- begin
- IF (COPY(qryfbs_param_email_laudosASSUNTO_A_ABCZ.AsString,I,1)<>'#') then
- ASSUNTOEMAIL:=ASSUNTOEMAIL+COPY(qryfbs_param_email_laudosASSUNTO_A_ABCZ.AsString,i,1)
- else
- ASSUNTOEMAIL:=ASSUNTOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- if (ListBoxAssociacao.Items.Text<>'') then
- if (qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCOUNT.AsInteger=1) and (sqlabqmenviado=False) then
- begin
- sqlabqmenviado:=true;
- TThread.Synchronize(myThread, procedure
- begin
- ListBoxAssociacao.Items.Add(nomearquivoxls);
- lstXML.Items.Clear;
- lstXML.Items.Add(nomearquivoxls);
- end);
- ASSUNTOEMAIL:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOASSUNTOEMAIL.AsString;
- CORPODOEMAIL:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOCORPODOEMAIL.AsString;
- //------------------------------------------------—
- if (qryfbs_amostra_dnaENVIA_LAUDO_PDF.AsString='S') then
- begin
- if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
- qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString,
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_CC.AsString, '', ListBoxAssociacao)=false) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao inserir email...');
- end);
- end
- else
- if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
- qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString,
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
- qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_CC.AsString, '', lstXML)=false) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao inserir email...');
- end)
- else
- begin
- if (ListBoxAssociacao.Items.Count>0) then
- for xAnexo := 0 to ListBoxAssociacao.Items.Count-2 do
- begin
- aj:='';
- I:=4;
- repeat
- aj:=aj+Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1);
- Inc(I);
- until (Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1)='_');
- try
- qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(AJ);
- except
- qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(Copy(AJ,4,Length(AJ)-3));
- end;
- qryAmostra_Enviada_ABCZ.EXECSQL;
- end
- else
- begin
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- end;
- qrysp_gen_fbs_email_enviado_id.close;
- qrysp_gen_fbs_email_enviado_id.Open;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='A';
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=qryQTDFBS_PARAM_ESPECIE_ASSOCIACAOEMAIL_A_EMAIL.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
- try
- qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao Cadastrar Email em Tabela.');
- end);
- end;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
- for xAnexo := 0 to ListBoxAssociacao.Items.Count-1 do
- begin
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]);
- try
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
- except
- end;
- end;
- end;
- end
- else
- if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
- qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, emailassociacao,
- qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
- '', '', ListBoxAssociacao)=false) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao inserir email...');
- end)
- else
- begin
- for xAnexo := 0 to ListBoxAssociacao.Items.Count-1 do
- begin
- aj:='';
- I:=4;
- repeat
- aj:=aj+Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1);
- Inc(I);
- until (Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),I,1)='_');
- try
- qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(AJ);
- except
- qryAmostra_Enviada_ABCZ.ParamByName('AMOSTRA').AsInteger:=StrToInt(Copy(AJ,4,Length(AJ)-3));
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryAmostra_Enviada_ABCZ.EXECSQL;
- origem:=ListBoxAssociacao.Items.Strings[xAnexo];
- destino:=Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+Copy(ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]),1,3)+ExtractFileName(aj)+'.pdf');
- end;
- qrysp_gen_fbs_email_enviado_id.close;
- qrysp_gen_fbs_email_enviado_id.Open;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='A';
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=emailassociacao;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
- try
- qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao Cadastrar Email em Tabela.');
- end);
- end;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
- for xAnexo := 0 to ListBoxAssociacao.Items.Count-1 do
- begin
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBoxAssociacao.Items.Strings[xAnexo]);
- try
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
- except
- // ShowMessage('Erro ao Cadastrar Anexo(s).');
- end;
- end;
- end;
- //---------— TÉRMINO EMAIL PARA ABCZ
- ASSUNTOEMAIL:='';
- FOR I:=1 to Length(qryfbs_param_email_laudosASSUNTO_A_CLIENTE.AsString) do
- begin
- IF (COPY(qryfbs_param_email_laudosASSUNTO_A_CLIENTE.AsString,I,1)<>'#') then
- ASSUNTOEMAIL:=ASSUNTOEMAIL+COPY(qryfbs_param_email_laudosASSUNTO_A_CLIENTE.AsString,i,1)
- else
- ASSUNTOEMAIL:=ASSUNTOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
- end;
- qryCORPOEMAIL.Open;
- CORPODOEMAIL:='';
- if (incompativeis=True) then
- FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString) do
- begin
- IF (COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,I,1)<>'#') then
- CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_INCOMPATIVEIS.AsString,i,1)
- else
- CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
- end
- else
- if (temLaudo=false) then
- begin
- FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString) do
- begin
- IF (COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,I,1)<>'#') then
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- qryAmostra_Enviada_Proprietario.EXECSQL;
- end;
- origem:=ListBox1.Items.Strings[xAnexo];
- if not FileExists(destino) then
- if not CopyFile(PChar(Origem), PChar(Destino), true) then
- TThread.Synchronize(myThread, procedure
- begin
- mmoEroosEmail.Lines.Add('Erro ao copiar ' + Origem + ' —> '+ Destino);
- end)
- else
- begin
- end;
- end;
- qrysp_gen_fbs_email_enviado_id.close;
- qrysp_gen_fbs_email_enviado_id.Open;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='P';
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=qryEmailClienteCLI_A_EMAIL3.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL+'';
- qryCORPOEMAIL.Open;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
- qryCORPOEMAIL.CLOSE;
- try
- qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao Cadastrar Email em Tabela.');
- end);
- end;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
- for xAnexo := 0 to ListBox1.Items.Count-1 do
- begin
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBox1.Items.Strings[xAnexo]);
- // qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_B_ARQUIVO').Value:=null; // LoadFromFile(ListBox1.Items.Strings[xAnexo],ftTypedBinary); //LoadFromFile (ListBox1.Items.Strings[xAnexo],ftBlob); //AsBlob:=TFileName(ListBoxAssociacao.Items.Strings[xAnexo]);
- // qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_B_ARQUIVO').Asblob:='X'; //LoadFromFile(ListBox1.Items.Strings[xAnexo],); //TFileName(ListBox1.Items.Strings[xAnexo]);
- try
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
- except
- // ShowMessage('Erro ao Cadastrar Anexo(s).');
- end;
- end;
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL_RELATORIO.AsString,i,1)
- else
- CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
- end
- end
- else
- FOR I:=1 to Length(qryCORPOEMAILCORPO_EMAIL.AsString) do
- begin
- IF (COPY(qryCORPOEMAILCORPO_EMAIL.AsString,I,1)<>'#') then
- CORPODOEMAIL:=CORPODOEMAIL+COPY(qryCORPOEMAILCORPO_EMAIL.AsString,i,1)
- else
- CORPODOEMAIL:=CORPODOEMAIL+qryEmailClienteCLI_A_RSOC.AsString;
- end;
- if (Copy(ExtractFileName(listbox1.Items.Strings[0]),1,3)='Rel') then
- else
- if (Trim(qryfbs_email_saidaLAUDOS_MAPA_A_EMAIL.AsString)<>'') then
- if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
- qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryfbs_email_saidaLAUDOS_MAPA_A_EMAIL.AsString,
- qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
- '', '', ListBox1)=false) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao inserir email...');
- end);
- TThread.Synchronize(myThread, procedure
- begin
- lblinformacao.Caption:='Enviando Email para o Proprietário.';
- ListBox1.Items.Add(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio);
- end);
- //---------— INICIO EMAIL PARA O PROPRIETÁRIO
- qryCORPOEMAIL.Close;
- if (ListBox1.Items.Text<>'') then
- begin
- if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
- qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryEmailClienteCLI_A_EMAIL3.AsString,
- qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
- '', '', ListBox1)=false) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao inserir email...');
- end)
- else
- begin
- for xAnexo := 0 to ListBox1.Items.Count-1 do
- begin
- if (ListBox1.Items.Strings[xAnexo]=qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio) then
- begin
- destino:=qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+NomeRelatorio;
- end
- else
- begin
- aj:='';
- I:=4;
- repeat
- aj:=aj+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1);
- Inc(I);
- until (Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),I,1)='_');
- destino:=Trim(qrycnti_parametrosPAR_A_CAMINHO_LAUDOS.AsString+Copy(ExtractFileName(ListBox1.Items.Strings[xAnexo]),1,3)+ExtractFileName(aj)+'.pdf');
- try
- qryAmostra_Enviada_PROPRIETARIO.ParamByName('AMOSTRA').AsInteger:=StrToInt(AJ);
- except
- qryAmostra_Enviada_Proprietario.ParamByName('AMOSTRA').AsInteger:=StrToInt(Copy(AJ,4,Length(AJ)-3));
- end;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- end;
- //---------— TÉRMINO EMAIL PARA O PROPRIETÁRIO
- TThread.Synchronize(myThread, procedure
- begin
- ListBox1.Items.Clear;
- ListBoxAssociacao.Items.Clear;
- end);
- laudos:='';
- qryfbs_amostra_dnaX.close;
- qryfbs_amostra_dnaX.SQL.Clear;
- qryfbs_amostra_dnaX.SQL:=qrytmpConsultaLaudoGeral.SQL;
- 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+') ');
- codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- end
- else
- IF (codigoprorietario<>qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger) then
- begin
- if (frmSeleciona_Envia_Placas <> nil) then
- begin
- qryfbs_amostra_dnaX.SQL.Add(' and (fbs_amostra_dna.especie_i_cod='+qryFBS_ESPECIE0ESPECIE_I_COD.AsString+') ');
- end
- else
- begin
- qryfbs_amostra_dnaX.SQL.Add(' and (fbs_amostra_dna.especie_i_cod='+qryfbs_amostra_dnaESPECIE_I_COD.AsString+') ');
- end;
- 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');
- qryfbs_amostra_dnaX.Prepare;
- qryfbs_amostra_dnaX.open();
- NomeRelatorio:=Trim('Rel_'+qryEmailCliente.parambyname('cod').AsString+'_'+TiraAcento(datetostr(Date))+'_'+TiraAcento(timetostr(Time))+'.pdf');
- // TThread.Synchronize(myThread, procedure
- // begin
- qrpSimples.Prepare;
- qrpSimples.ExportToFilter(TQRPDFDocumentFilter.Create(Trim(qrycnti_parametrosPAR_A_SER.AsString+'LaudoTmp\'+NomeRelatorio)));
- // end);
- incompativeis:=false;
- qryfbs_amostra_dnaX.First;
- while not qryfbs_amostra_dnaX.Eof do
- begin
- if (qryfbs_amostra_dnaXRESULT_I_COD.AsInteger=2) then
- incompativeis:=true;
- qryfbs_amostra_dnaX.Next;
- end;
- qryfbs_amostra_dnaX.close;
- codigoprorietario:=qryfbs_amostra_dnaPROPRIETARIOCOD.AsInteger;
- qryEmailCliente.close;
- qryEmailCliente.open;
- if (Trim(qryEmailClienteDNA_A_EMAIL_RACA.Text) = '') then
- emailassociacao:=qryEmailClienteDNA_A_EMAIL.AsString
- else
- emailassociacao:=qryEmailClienteDNA_A_EMAIL_RACA.AsString;
- MetroScience, [01.04.18 19:19]
- [In reply to Carlos Dias Da silva Delphi Developer]
- //---------— INICIO EMAIL PARA O PROPRIETÁRIO
- qryCORPOEMAIL.Close;
- if (ListBox1.Items.Text<>'') then
- begin
- if (RegistraEmail(qryfbs_email_saidaEM_PORT.AsInteger, qryfbs_email_saidaEM_HOST.AsString, qryfbs_email_saidaEM_USERID.AsString,
- qryfbs_email_saidaEM_A_SENHA.AsString, qryfbs_email_saidaEM_EMAIL.AsString, qryEmailClienteCLI_A_EMAIL3.AsString,
- qryEMAILEM_EMAIL.AsString, ASSUNTOEMAIL, CORPODOEMAIL,
- '', '', ListBox1)=false) then
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao inserir email...')
- end)
- else
- begin
- qrysp_gen_fbs_email_enviado_id.close;
- qrysp_gen_fbs_email_enviado_id.Open;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger:=qrysp_gen_fbs_email_enviado_idID.AsInteger;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSOC_PROPRI').AsString:='P';
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_D_DATAENVIO').AsDate:=Date;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILDEENVIO').AsString:=qryEMAILEM_EMAIL.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_EMAILENVIADO').AsString:=qryEmailClienteCLI_A_EMAIL3.AsString;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_ASSUNTO').AsString:=ASSUNTOEMAIL+'';
- qryCORPOEMAIL.Open;
- qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_A_CORPODOEMAIL').AsBlob:=CORPODOEMAIL;
- qryCORPOEMAIL.Close;
- try
- qryINCLUI_FBS_EMAIL_ENVIADO.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao Cadastrar Email em Tabela.');
- end);
- end;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('UNID_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('UNID_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('CLI_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('CLI_I_COD').AsInteger;
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_I_COD').AsInteger:=qryINCLUI_FBS_EMAIL_ENVIADO.ParamByName('EMAIL_I_COD').AsInteger;
- for xAnexo := 0 to ListBox1.Items.Count-1 do
- begin
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ParamByName('EMAIL_DET_A_NOME').AsString:=ExtractFileName(ListBox1.Items.Strings[xAnexo]);
- try
- qryINLCUI_FBS_EMAIL_ENVIADO_DET.ExecSQL;
- except
- sair:=True;
- TThread.Synchronize(myThread, procedure
- begin
- ShowMessage('Erro ao Cadastrar Anexo(s).');
- end);
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement