Bu tür bir kırılım hesabı için rbdetail ve rbsubdetail kullanılabilir fakat : Kırmızı, yeşil, sarı gibi elmaların nitelendirme değerleri bir dosyada ve diğer 1.1.2002 yesil elma 3 adet 2.1.2002 kirmizi elma 2 adet. . gibi bilgiler diğer bir dosyada olmak kaydı ile hazır QR componenetleri ile yapılabilir. Eğer bu veriler tek bir dosyada ise bu mantığa uygun olarak 2 farklı dosyaya bölebilir veya yapmak istediğin şekilde farklı bir dosyaya bir program bloğu içinde oluşturursun. Bu oluşturduğun dosyayı QR içinde Detailband olarak dökebilirsin. Kolay gelsin... Uzun yıllar sonra form sayfalarına göz atabilecek vakjit bulabildiğme seviniyorum..3-4 yıldır işlerimin yoğunluğundan fırsat bulamıyordum. Hep yabanci sitelerde forumlara girerdim. Görüyorumki türkiye de de delphi, C/c++ ve diğer hemen hemen her konuda site ve forum oluşmuş. Bu açıdan çok eski mesajlara bakarak cevaplar yazabiliyorum. sonuçda her yeni öğrenen aynı aşamalardan geçiyor... Bu nedenle geç de olsa bu tür konulara takılan hali hazırda birlerinin varlığını hissdebiliyor ve yardımımın dokunmasını istiyorum..

Teşekkür ederim bekliyorum Table'ı verdiğimde ve sırasıda uygun olduğuda quick report bana o listeyi verebilmeli. İlgin için şimdiden çok teşekkürler

yazdırma işleminden önce şunu yap ; tabloyu aynı kayıtlara göre sıra ile filtrele bu iş için buffer tabloda kullanabilirsin. Sonra bunları sıra ile yazıcıya gönder fakat sen heralda aynı çıktı üzerinde bu işlemi yapmak istiyorsun bir sn sana kodu göndereceğim.

bana bir mail at, bu programla uğraşmaya başladım. Bu aralar biraz doluyum. Kusura bakma 2-3 güne kadar eline geçer.

Şu an o konun üzerinde uğraşıyorum. Bitince buraya mesaj bırakırım mailini bırakırsın forward ederim.

örnek programı yollarsan çok sevineciğim

Bu islem icin QReportun bir bandini kullanabilirsin. Yani hazir olarak sunulmush zaten.. Artı bu konuda örneklerde olmasi lazım Type : TQRBandType The band types are RbTitle Printed on the first page of the report after the page header RbPageHeader Printed on top of each page. Printing on the first page can be switched off with the Options property RbDetail Printed once for every record/row in the connected dataset RbPageFooter Printed at the bottom of each page. Printing on the last page can be switched off with the Options property RbSummary Printed after all detail bands and potential group footers at the end of the report. RbSubDetail Reserved for use by the TQRSubDetail component. Do not set this band type manually RbColumnHeader Printed a the top of each column on every page in a multi column report. Printed once after the page header in a single column report RbGroupFooter Footer band for TQRGroup or TQRSubDetail components. Printed when the group breaks or all detail bands have been printed for the TQRSubDetail RbGroupHeader Header band for TQRGroup or TQRSubDetail components. Printed before any detail bands for a given group or TQRSubDetail RbOverlay Included for backwards compatibility with QuickReport version 1. Do not use this band type RbChild Reserved for use by the TQRChildBand component. Do not set this band type manually

QUICK REPORT İLE KIRILIM VE KIRILIM TOPLAMI 0 24 Ara 2001 16:31 Eklendi Merhaba arkadaşlar, Ben delphide çok yeniyim, Birşey yapmak istiyorum fakat bir türlü başaramadım. Diyelimki bir dosya var bunda kayıtlar şu şekilde Table1 1.1.2001 elma yeşil 5 tane 2.2.2001 elma yeşil 2 tane 3.3.2001 elma yeşil 3 tane 4.4.2001 elma kırmızı 4 tane. Amacım quick reportu kullanarak şyle bir liste yapmak 1.1.2001 elma yeşil 5 tane 2.2.2001 elma yeşil 2 tane 3.3.2001 elma yeşil 3 tane Toplam 10 elma yeşil 4.4.2001 elma kırmızı 4 tane Toplam 4 kırmızı elma yani kırılım alarak toplam yazdırma lütfen yardııım

Forum alanını kullanabilirmiyiz acaba bu konu ile ilgili olarak... . PAS uzantılı dosyalar text tabanlı oldugu icin buraya koyulabilir ORNEK unit fMalzemeKodSec; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Db, DBTables, ExtCtrls, Grids, DBGrids, Buttons, dxDBGrid, dxTL, dxDBCtrl, dxCntner; type TMalzemeKodSec = class FormPanel: TPanel; ScrollBox1: TScrollBox; MKodSecDbGrid: TdxDBGrid; MKodSecDbGridStokKodu: TdxDBGridMaskColumn; MKodSecDbGridMalKodu: TdxDBGridMaskColumn; MKodSecDbGridMalzemeAd: TdxDBGridColumn; MKodSecDbGridStokYerAd: TdxDBGridMaskColumn; MKodSecDbGridMiktar: TdxDBGridMaskColumn; MKodSecDbGridBirimAd: TdxDBGridColumn; Panel1: TPanel; Label1: TLabel; Edit1: TEdit; Panel2: TPanel; SpeedButton1: TSpeedButton; SpeedButton3: TSpeedButton; procedure Edit1Change ; procedure SpeedButton1Click ; procedure SpeedButton3Click ; procedure FormActivate ; private public StokKodSt : String; function Execute : boolean; end; var MalzemeKodSec: TMalzemeKodSec; implementation uses modDMStox; function TMalzemeKodSec. Execute : boolean; begin if MalzemeKodSec = nil then begin Application. CreateForm ; MalzemeKodSec. Showmodal; end else MKodSecDbGrid. DataSource. DataSet. Refresh; MalzemeKodSec. Showmodal; case MalzemeKodSec. modalresult of mrOK : result := true; else result := false; end; end; procedure TMalzemeKodSec. Edit1Change ; begin if Edit1. Text &lt;&gt; '' then begin with MKodSecDbGrid. DataSource. DataSet do begin Filtered := False; Filter := 'StokKodu='+''''+Edit1. Text+' '''; Filtered := True; if Edit1. Text = '' then Filtered := False; end; end else MKodSecDbGrid. DataSource. DataSet. Filtered := False; end; procedure TMalzemeKodSec. SpeedButton1Click ; begin StokKodSt := DMStox. StokTableStokKodu. AsString; ModalResult := mrOK; // (GetParentForm as TdxPopupEditForm). ClosePopup ; end; procedure TMalzemeKodSec. SpeedButton3Click ; begin ModalResult := mrCancel; // (GetParentForm as TdxPopupEditForm). ClosePopup ; end; procedure TMalzemeKodSec. FormActivate ; begin MKodSecDbGrid. DataSource. DataSet. Refresh; end; end. ( //closes the form containing PopupGrid procedure TfmPopup. PopupGridDblClick ; begin (GetParentForm as TdxPopupEditForm). ClosePopup ; end; procedure TfmPopup. PopupGridKeyDown ; begin if and or ((Key = VK_F4) and not or then (GetParentForm as TdxPopupEditForm). ClosePopup ; if Key = VK_RETURN then PopupGridDblClick ; end; procedure TfmPopup. PopupGridMouseUp ; begin if and (PopupGrid. GetHitTestInfoAt in RowHitTests) then PopupGridDblClick ; end; ) object MalzemeKodSec: TMalzemeKodSec Left = 403 Top = 507 Width = 724 Height = 275 BorderIcons = Caption = 'MalzemeKodSec' Color = clBtnFace Font. Charset = DEFAULT_CHARSET Font. Color = clWindowText Font. Height = -10 Font. Name = 'MS Sans Serif' Font. Style = FormStyle = fsStayOnTop OldCreateOrder = False OnActivate = FormActivate PixelsPerInch = 96 TextHeight = 13 object FormPanel: TPanel Left = 0 Top = 0 Width = 716 Height = 248 Align = alClient Caption = 'FormPanel' TabOrder = 0 object ScrollBox1: TScrollBox Left = 1 Top = 34 Width = 714 Height = 213 Align = alClient TabOrder = 0 object MKodSecDbGrid: TdxDBGrid Left = 0 Top = 0 Width = 710 Height = 209 Bands = &lt; item end&gt; DefaultLayout = True HeaderPanelRowCount = 1 KeyField = 'StokKodu' ShowGroupPanel = True SummaryGroups = &lt;&gt; SummarySeparator = ', ' Align = alClient ParentShowHint = False ShowHint = False TabOrder = 0 DataSource = DMStox. StokDataSource Filter. Active = True Filter. AutoDataSetFilter = True Filter. Criteria = OptionsBehavior = OptionsDB = OptionsView = ShowPreviewGrid = False object MKodSecDbGridStokKodu: TdxDBGridMaskColumn Width = 108 BandIndex = 0 RowIndex = 0 FieldName = 'StokKodu' end object MKodSecDbGridMalKodu: TdxDBGridMaskColumn Width = 114 BandIndex = 0 RowIndex = 0 FieldName = 'MalKodu' end object MKodSecDbGridMalzemeAd: TdxDBGridColumn Width = 211 BandIndex = 0 RowIndex = 0 FieldName = 'MalzemeAd' end object MKodSecDbGridStokYerAd: TdxDBGridMaskColumn Width = 108 BandIndex = 0 RowIndex = 0 FieldName = 'StokYerAd' end object MKodSecDbGridMiktar: TdxDBGridMaskColumn Width = 66 BandIndex = 0 RowIndex = 0 FieldName = 'Miktar' end object MKodSecDbGridBirimAd: TdxDBGridColumn Width = 62 BandIndex = 0 RowIndex = 0 FieldName = 'MalzemeBirimi' end end end object Panel1: TPanel Left = 1 Top = 1 Width = 714 Height = 33 Align = alTop Color = 12242402 TabOrder = 1 object Label1: TLabel Left = 7 Top = 10 Width = 44 Height = 13 Caption = 'Stok Kod' end object Edit1: TEdit Left = 59 Top = 7 Width = 158 Height = 21 Hint = 'Stok Kodlarini filtrelemek icin buraya giriniz..' ParentShowHint = False ShowHint = True TabOrder = 0 OnChange = Edit1Change end object Panel2: TPanel Left = 228 Top = 1 Width = 57 Height = 33 BorderStyle = bsSingle Color = 8421631 TabOrder = 1 object SpeedButton1: TSpeedButton Left = 5 Top = 7 Width = 19 Height = 19 Hint = 'Sonucu Tasi' Glyph. Data = NumGlyphs = 2 ParentShowHint = False ShowHint = True OnClick = SpeedButton1Click end object SpeedButton3: TSpeedButton Left = 31 Top = 7 Width = 19 Height = 19 Hint = 'IPTAL/Kapat' Glyph. Data = NumGlyphs = 2 ParentShowHint = False ShowHint = True OnClick = SpeedButton3Click end end end end end ve sonrakide DFM dosya Bu sebeple forum sahası kod aktarımında kullanılabilir.