Kod: Tümünü seç
function TFMAILMAN.CheckMail: Integer;
begin
with QCHECK do
begin
Close;
SQL.Clear;
SQL.Add('SELECT ISLEM, ISLEMNO FROM TBLBILDIRIMLERIM WHERE ISLEM Like ''%Yeni Talep Oluşturuldu%'' AND MAILATILDI=0 GROUP BY ISLEM, ISLEMNO');
Open;
end;
Result := QCHECK.RecordCount;
end;
Rapor Dosyasının Hazırlanması
Kod: Tümünü seç
procedure TFMAILMAN.MaliHazirla(ISLEMNO: STRING);
VAR
A : TfrxADODatabase;
QTALEPM,
QTALEPDD,
QTALEPTEMP : TADOQuery;
fi, IDSI, COUNT : Integer;
Himza, timza, kimza, oimza : Tfrxpictureview;
MS: TMemoryStream;
begin
QTALEPM := TADOQuery.Create(Self);
QTALEPM.Connection := CON;
QTALEPDD := TADOQuery.Create(Self);
QTALEPDD.Connection := CON;
QTALEPTEMP := TADOQuery.Create(Self);
QTALEPTEMP.Connection := CON;
with QTALEPM do
begin
Close;
SQL.Clear;
SQL.Add('SELECT ID,ISLEMNO, HID, TID, KID, OID FROM TBLTALEPM WHERE ISLEMNO=:P');
Parameters.ParamByName('P').Value := ISLEMNO;
Open;
end;
IDSI := QTALEPM.FieldByName('ID').AsInteger;
with QTALEPDD do
begin
close;
SQL.Clear;
SQL.Add('SELECT * FROM TBLTALEPD WHERE TALEPID=:IDSI');
Parameters.ParamByName('IDSI').Value := IDSI;
Open;
end;
QTALEPDD.First;
try
try
Screen.Cursor := crSQLWait;
while NOT QTALEPDD.Eof do
begin
Application.ProcessMessages;
with QTALEPTEMP do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO dbo.TBLTALEPTEMP');
SQL.Add('(TALEPID,ISLEMNO,STOKID,STOK,MARKA,MIKTAR,BIRIM,TESLIMTARIHI,');
SQL.Add('TESLIMYERI,S,G,N,M,KULLANILACAGIYER,DIGER,PARABIRIMI,');
SQL.Add('BIRIMFIYAT,BIRIMP,KDVORAN,KDVDURUM,TUTAR)');
SQL.Add('VALUES');
SQL.Add('(:TALEPID,:ISLEMNO,:STOKID,:STOK,:MARKA,:MIKTAR,:BIRIM,:TESLIMTARIHI,');
SQL.Add(':TESLIMYERI,:S,:G,:N,:M,:KULLANILACAGIYER,:DIGER,:PARABIRIMI,');
SQL.Add(':BIRIMFIYAT,:BIRIMP,:KDVORAN,:KDVDURUM,:TUTAR)');
Parameters.ParamByName('TALEPID').Value := IDSI;
Parameters.ParamByName('ISLEMNO').Value := QTALEPDD.FieldByName('ISLEMNO').AsString;
Parameters.ParamByName('STOKID').Value := QTALEPDD.FieldByName('STOKID').AsInteger;
Parameters.ParamByName('STOK').Value := QTALEPDD.FieldByName('STOK').AsString;
Parameters.ParamByName('MARKA').Value := QTALEPDD.FieldByName('MARKA').AsString;
Parameters.ParamByName('MIKTAR').Value := QTALEPDD.FieldByName('MIKTAR').AsFloat;
Parameters.ParamByName('BIRIM').Value := QTALEPDD.FieldByName('BIRIM').AsString;
Parameters.ParamByName('TESLIMTARIHI').Value := QTALEPDD.FieldByName('TESLIMTARIHI').AsDateTime;
Parameters.ParamByName('TESLIMYERI').Value := QTALEPDD.FieldByName('TESLIMYERI').AsString;
Parameters.ParamByName('S').Value := QTALEPDD.FieldByName('S').AsBoolean;
Parameters.ParamByName('G').Value := QTALEPDD.FieldByName('G').AsBoolean;
Parameters.ParamByName('N').Value := QTALEPDD.FieldByName('N').AsBoolean;
Parameters.ParamByName('M').Value := QTALEPDD.FieldByName('M').AsBoolean;
Parameters.ParamByName('KULLANILACAGIYER').Value := QTALEPDD.FieldByName('KULLANILACAGIYER').AsString;
Parameters.ParamByName('DIGER').Value := QTALEPDD.FieldByName('DIGER').AsString;
Parameters.ParamByName('PARABIRIMI').Value := QTALEPDD.FieldByName('PARABIRIMI').AsString;
Parameters.ParamByName('BIRIMFIYAT').Value := QTALEPDD.FieldByName('BIRIMFIYAT').AsFloat;
Parameters.ParamByName('BIRIMP').Value := QTALEPDD.FieldByName('BIRIMP').AsString;
Parameters.ParamByName('KDVORAN').Value := QTALEPDD.FieldByName('KDVORAN').AsFloat;
Parameters.ParamByName('KDVDURUM').Value := QTALEPDD.FieldByName('KDVDURUM').AsBoolean;
Parameters.ParamByName('TUTAR').Value := QTALEPDD.FieldByName('TUTAR').AsFloat;
ExecSQL;
end;
QTALEPDD.Next;
end;
with QTALEPDD do
begin
close;
SQL.Clear;
SQL.Add('SELECT COUNT(ID) AS SAYISI FROM TBLTALEPD WHERE TALEPID=:IDSI');
Parameters.ParamByName('IDSI').Value := IDSI;
Open;
Count := Fields[0].AsInteger;
end;
if Count < 7 then
begin
Count := 7 - Count;
for fi := 0 to Count -1 do
begin
Application.ProcessMessages;
with QTALEPTEMP do
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO TBLTALEPTEMP (TALEPID) VALUES (:PX)');
Parameters.ParamByName('PX').Value := IDSI;
ExecSQL;
end;
end;
end;
frxreport1.ReportOptions.Name:='TALEP';
frxreport1.FileName:=ExtractFilePath(Application.ExeName)+ 'reports\TALEP.fr3';
frxReport1.LoadFromFile(ExtractFilePath(Application.ExeName)+ 'reports\TALEP.fr3');
A:= TFRXAdoDatabase(frxReport1.findobject('CON'));
A.Connected := false;
A.DatabaseName := CON.ConnectionString;
A.Connected := True;
Himza := TfrxPictureView(frxReport1.findobject('himza'));
Himza.Picture.Assign(ImzaVer(QTALEPM.FieldByName('HID').AsInteger));
timza := TfrxPictureView(frxReport1.findobject('timza'));
timza.Picture.Assign(ImzaVer(QTALEPM.FieldByName('TID').AsInteger));
kimza := TfrxPictureView(frxReport1.findobject('kimza'));
kimza.Picture.Assign(ImzaVer(QTALEPM.FieldByName('KID').AsInteger));
Oimza := TfrxPictureView(frxReport1.findobject('oimza'));
Oimza.Picture.Assign(ImzaVer(QTALEPM.FieldByName('OID').AsInteger));
frxReport1.Variables['<IDSI>'] := IDSI;
frxReport1.PrepareReport(True);
finally
Screen.Cursor := crDefault;
FreeAndNil(QTALEPM);
FreeAndNil(QTALEPDD);
FreeAndNil(QTALEPTEMP);
end;
except on E: Exception do
SHOWMESSAGE(E.Message);
end;
end;
Kod: Tümünü seç
procedure TFMAILMAN.Gönder;
begin
frxMailExport1.ShowExportDialog := false;
frxMailExport1.ShowDialog := True;
frxMailExport1.ExportFilter:=frxPDFExport1;
frxMailExport1.Address:='aliyesiloglu@mali.com.tr';
frxMailExport1.FromMail:='bildirim@mali.com.tr';
frxMailExport1.FromCompany:='MALİ GROUP';
frxMailExport1.FromName:='Bildirim';
frxMailExport1.Login:='bildirim@mali.com.tr';
frxMailExport1.Password:='xxxxxx';
frxMailExport1.SmtpHost:='mail.mali.com.tr';
frxMailExport1.SmtpPort := 587;
frxMailexport1.Subject:='Talep Bildirimi';
frxpdfexport1.Author:='MALİ GROUP ESAS 2011';
frxpdfexport1.Creator:='ESAS 2011';
frxreport1.Export(frxMailExport1);
end;
frxMailExport1.ShowDialog := True;
bu satırda TRUE olupta dialog açılırsa gönderim yapıyor.. FALSE değer atayıp dialog açılmazsa kitleniyor..
daha öncesinde böyle bir çalışması olan arkadaşlar varsa tecrübelerini paylaşmalarını bekliyorum..
Teşekkürler...