Fatura no hakkında - Baskı Önizleme +- AccessTr.neT (https://accesstr.net) +-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html) +--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html) +--- Konu Başlığı: Fatura no hakkında (/konu-fatura-no-hakkinda.html) |
Cvp: Fatura no hakkında - mantars - 01/09/2010 Sayın mehmetdemiral; makbuz lazer adlı rapor çalıştırılıp rapor alındıktan sonra kapatıldığında sırası ile makbuz ekle ve ödeme sil surguları çalışıyor. Ödemeleri siliyorum çünkü aslolan serbest meslek makbuzunun ödeme anında kesilip müşteriye verilmesidir. bu olayda hiç bir şekilde cari hesap (Borç-alacak) mantığı işlemez. Forumda üstatlarımdan öğrendiğim şeylerden biri de gereksiz verilerden kaçınıp veri tabanını şişirmemek. Kısacası ödemeler tablosundaki kayıtların ömrü ilgili makbuzun kesilmesi ile sona eriyor. Neyse buralara takılmayalım. Sorunum şu ki Makbuz lazer raporunda yer alan MakbuzNo değerini (bu raporda oluşan) makbuzlar tablosuna nasıl kaydederim. Verdiğiniz örneği inceliyorum. İlginize teşekkürler. Cvp: Fatura no hakkında - benremix - 01/09/2010 Sn mantars alternatif çözüm birleştirme sorgusu yapabilirsiniz. Saygılar... Cvp: Fatura no hakkında - mehmetdemiral - 01/09/2010 Alıntı:Forumda üstatlarımdan öğrendiğim şeylerden biri de gereksiz verilerden kaçınıp veri tabanını şişirmemek. Kısacası ödemeler tablosundaki kayıtların ömrü ilgili makbuzun kesilmesi ile sona eriyor. Neyse buralara takılmayalım. Sayın mantars, bu sözleriniz için yorum yok diyebilirim sadece. Sonuçta sizin programınız, siz hazırlıyorsunuz. Ama ben halen programınızın çalışma mantığı ile ilgili cevabı bekliyorum. Yukarda madde madde yazdığım çalışma sistemi, doğru mu? Yoksa yanlış mı çalışıyorum. Çok basitleştirerek anlatır mısınız. İnanın gündüzleri işyerinde o kadar yoğun teknik servis işiyle uğraşıyorum ki, akşam kafayı toplamak zor. Bir de evde net yok. Şu anda net olan bir yerde iftardayım, burda da Access yok) Şansın bu kadarı... Siz tane tane, formların adlarıyla şu işi bir gösterinm bana. Yaşlı adam olunca biraz geç anlıyor insan) Kusura bakmayın... Bunları şunun için yazıyorum: Siz "makbuz lazer adlı rapor çalıştırılıp rapor alındıktan sonra kapatıldığında sırası ile makbuz ekle ve ödeme sil surguları çalışıyor." demişsiniz ya, ben o raporu direk açamıyorum. Tarih aralığı falan istiyor ama girilemiyor. Cvp: Fatura no hakkında - mantars - 02/09/2010 Sayın mehmetdemiral; ikinci örnek dosyamdaki uygulamamda sadece sorunumun çözülmesi için gerekli olduğuna inandığım form, rapor vb. bulunduğu için çalışma mantığını anlamamış olabilirsiniz. Birinci mesajımdaki örnek üzerinden anlatayım o halde. 1) Başlangıçta açılan denetim formu aracılığı ile Serbest meslek mensubu bilgileri (Faturayı kesecek olan firma gibi algılayabiliriz) girilir ve form kapatılır. 2) Kanuni oran bilgileri kontrol edilir ve varsa düzeltme yapılarak o form da kapatılır. 3) Müşteri işlemleri bölümünden müşteri kaydı yapılır. veya üzerinde bir değişiklik varsa yapılır. 4) Müşteri işlemleri bölümünde yer alan müşteri ödeme taahüdü girişi bölümünden ilgili müşterilerin ilgili ödeme bilgileri kaydedilir. (Buradaki ödeme bilgileri müşterinin o ödemesini yaptığını deyil ödeme taahüdünde bulunduğunu gösterir. Bu yüzden ödeme bilgileri girişinde tahsil edildi onay kutusu bulunmakta.) 5) Fatura (Makbuz) kesileceği zaman ana menüden makbuz kesme işlemleri bölümüne girilir. Kesilecek makbuz belirle bölümünden Makbuz belirle formu çalıştırılır. bu form tahsil edilmeyenler sorgusu aracılığı ile ödemeler tablosunda tahsil edildi onay kutusu işaretli olmayan ve verilen tarih aralığındaki ödeme kayıtlarını getirir. makbuz belirle formu açıldığı halde tarih alanlarına girilemiyor ise MSCOMCT2.OCX ile ilgili kayıt işlemi yapılır. (Ben de bu kayıt işlemini bu forumdan öğrendim.) Faturası kesilecek ödemelerin tahsil edildi onay kutuları işaretlenerek bu form kapatılır. 6) Lazer yazıcıdan makbuz kesme bölümüne girilir. Bu bölüme girilince makbuz lazer raporu açılır. 6.1) Makbuz lazer raporunun açıldığında olayına bağlı olarak RaporTarihAraligi parametre formu aracılığı ile ödemelersorgu sorgusuna dayalı olarak verilen iki tarih arasındaki ödeme bilgileri, müşteri bilgileri vb. faturanın hesaplanması ve kesimi ile ilgili bilgilere dayanarak kesilecek faturalar (makbuzlar) raporlanır. 6.2) Makbuz lazer raporunun kapandığında olayına bağlı olarak makbuz ekle makrosu öncelikle makbuz ekle ekleme sorgusunu çalıştırır. Bu sorgu ilgili rapordaki bilgileri makbuzlar tablosuna ekler. (sorunum olan ilgili makbuz numarası alanı hariç) 6.3) Makbuz lazer raporunun kapandığında olayına bağlı olarak makbuz ekle makrosu ödeme sil silme sorgusunu çalıştırır. Bu sorgu ilgili rapordaki bilgileri ödemeler tablosundan siler. Programın işleyişi kısaca bu hocam. Bu arada programcılık mantığı yönünden sizlere ters gelen hatalarım muhakkak vardır, affola. Tüm hocalarıma allah sabırlar versin. Çünkü bu mesajları okumak bile önemli bir vakit ayırmadır, kafa patlatmaktır, emek vermektir. bunun için paylaşımda bulunan tüm arkadaşlara teşekkürler. Cvp: Fatura no hakkında - ozanakkaya - 03/09/2010 MakbuzLazer isimli rapora Kayitno alanı ekle ve raporun kapandığında olayına aşağıdaki (makroyu iptal et) kodu yaz Kod:
Private Sub Report_Close() Cvp: Fatura no hakkında - mantars - 03/09/2010 Sayın sledgeab verdiğiniz kodları Private Sub Report_Close() DoCmd.OpenQuery "Makbuz Ekle", acViewNormal, acAdd DoCmd.OpenQuery "Ödeme Sil", acViewNormal, acEdit DoCmd.Close acQuery, "Makbuz Ekle" strSQL = "SELECT * FROM Makbuzlar " Set rstkayit = New ADODB.Recordset rstkayit.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic artma = 0 Do While Not rstkayit.EOF With rstkayit .Find "[MakbuzNo]= null" If Not rstkayit.EOF Then artma = artma + 1 FatNo = SonMakbuzNo + artma .Fields("MakbuzNo") = FatNo .Update End If End With Loop strSQL = "SELECT * FROM SonNumara " Set rsxkayit = New ADODB.Recordset rsxkayit.Open strSQL, CurrentProject.Connection, adOpenKeyset, adLockOptimistic With rsxkayit .Fields("SonMakbuzNo") = FatNo .Update End With End Sub Şeklinde değiştirerek tam isteğime ulaştım. Ancak bu kezde sorgu kullanıcı tarafından iptal edilirse hata mesajı vererek çalışmayı kesiyor. Bunu engellemek için ne yapabilirim? Saygılar. |