Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
24/12/2012 19:33
Konu Sahibi
etuna76
Yorumlar
4
Okunma
2101
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
etuna76

etuna76

Üye
3000
 42
 2
 6
 10/02/2009
0
 Ankara
 
 Ofis 2007
 06/12/2016,01:05
Çözüldü 
Arkadaşlar, acil yardıma ihtiyacım var.

Ekte gönderdiğim vt ile bir outlook email oluşturmaya çalışıyorum. Data tipi ek olan ve içeri gömdüğüm dosyayı outlook mail oluştururken bir türlü mail eki olarak getirtemedim. Yardımlarınızı bekliyorum.

Tesekkurler.




Kur@l

Kur@l

Uzman
266
 43
 59
 2.034
 05/11/2008
 -
 
 Ofis 2010 32 Bit
 01/05/2019,23:41
Çözüldü 
mail isimli formunuza aşağıdaki fonksiyonu ekleyin sonra o fonksiyonu çağırın ve dosya1 alanında sakladığınız eklentiyi geçici olarak bir klasöre kaydedin sonrada o klasördeki dosyları ekleyin.
Bu şekilde çözülür.
Örnek olarak eklemek için zamanım yok şu anda.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
Public Function SaveAttachments(strPath As String, Optional strPattern As String = "*.*") As Long
    Dim dbs As DAO.Database
    Dim rst As DAO.Recordset2
    Dim rsA As DAO.Recordset2
    Dim fld As DAO.Field2
    Dim dosyaad As DAO.Field2
    Dim strFullPath As String
 
    'Get the database, recordset, and attachment field
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("select * from mail where id =" & Me.id.Value)
    Set fld = rst("dosya1")
    Set dosyaad = rst("id")
    
    'Navigate through the table
    Do While Not rst.EOF
    
        'Get the recordset for the Attachments field
         Set rsA = fld.Value
       'Set rsA = dosyaad.Value
        
        'Save all attachments in the field
        Do While Not rsA.EOF
            If rsA("FileName") Like strPattern Then
                 strFullPath = strPath & "\" & rsA("FileName")
                 dosyam = rsA("FileName")
                'strFullPath = strPath & "\" & rsA("ad")
                Debug.Print rsA("FileName"), rst("id")
                'Make sure the file does not exist and save
                If Dir(strFullPath) = "" Then
                    rsA("FileData").SaveToFile strFullPath
                End If
                
                'Increment the number of files saved
                SaveAttachments = SaveAttachments + 1
            End If
            
            'Next attachment
            rsA.MoveNext
        Loop
        rsA.Close
        
        'Next record
        rst.MoveNext
    Loop
    
    rst.Close
    dbs.Close
    
    Set fld = Nothing
    Set rsA = Nothing
    Set rst = Nothing
    Set dbs = Nothing
End Function


Public dosyam As String

Private Sub Komut36_Click()
SaveAttachments ("c:\eeee")

End Sub


komşuda dülger mi var geliyor keser sesi,
ustalar konuşunca çıraklar keser sesi.

...........
etuna76

etuna76

Üye
3000
 42
 2
 6
 10/02/2009
0
 Ankara
 
 Ofis 2007
 06/12/2016,01:05
Çözüldü 
Kural hocam eyvallah,

vermiş olduğun kodlarla uyarladım ve oldu. Fakat şöyle bir sıkıntım var şimdi. Veri tipi EK olursa bir sıkıntı olmuyor dosyayı dışarı verip outlook maile alabılıyorum, ancak veri tipini OLE Nesnesi seçersem dosyayı dışarı aktaramıyor. Aktaracakmış gibi oluyor, yanıt vermiyor.

Veriyi Sql Serverdan çektiğim için de veri tipi OLE geliyor. Aslında söyle bir hata veriyor. "You must use the dbSeeChanges option with OpenRecordSet when accessing a Sql Server table that has an IDENTITY column".

Sizce neden olabilir? Bir başka sorumda 3-4 adet ek için nasıl bir döngü yapmalıyım.

Şimdiden teşekkürler.

Verdiğiniz kodun düzenlemesi altta.

Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Public Function SaveAttachments(strPath As String, Optional strPattern As String = "*.*") As Long
    Dim dbs As dao.Database
    Dim rst As dao.Recordset2
    Dim rsA As dao.Recordset2
    Dim fld As dao.Field2
    Dim dosyaad As dao.Field2
    Dim strFullPath As String
    
Dim objOutlook As New Outlook.Application
Dim objMail As Outlook.MailItem
Dim sTitle As String, sFile As String, sErr As String

    'Get the database, recordset, and attachment field
    Set dbs = CurrentDb
    Set rst = dbs.OpenRecordset("select * from mail where id =" & Forms!frmMail!id.Value)
    Set fld = rst("dosya1")
    Set dosyaad = rst("id")
    Set objMail = objOutlook.CreateItem(olMailItem)
On Error Resume Next

    'Navigate through the table
    Do While Not rst.EOF
    
        'Get the recordset for the Attachments field
         Set rsA = fld.Value
       'Set rsA = dosyaad.Value
        
        'Save all attachments in the field
        Do While Not rsA.EOF
            If rsA("FileName") Like strPattern Then
                 strFullPath = strPath & "\" & rsA("FileName")
                 dosyam = rsA("FileName")
                'strFullPath = strPath & "\" & rsA("ad")
                Debug.Print rsA("FileName"), rst("id")
                'Make sure the file does not exist and save
                If Dir(strFullPath) = "" Then
                    rsA("FileData").SaveToFile strFullPath
                End If
                
                'Increment the number of files saved
                SaveAttachments = SaveAttachments + 1
            End If
            
            'Next attachment
            rsA.MoveNext
        Loop
        rsA.Close
        
        'Next record
        rst.MoveNext
    Loop
    
    rst.Close
    dbs.Close
    
    Set fld = Nothing
    Set rst = Nothing
    Set dbs = Nothing
    
    With objMail
        .To = Forms!frmMail!Metin10
        .Subject = Forms!frmMail!Metin24
        .ReadReceiptRequested = False
        .HTMLBody = Forms!frmMail!text
        .Display
            sFile = strFullPath
            sTitle = "Latest Report"
           With .Attachments.Add(sFile, olByValue)
                .DisplayName = sTitle
           End With
    End With
        objMail = Nothing
        objOutlook = Nothing

        Set rsA = Nothing
        
Kill strFullPath

End Function

Private Sub Komut36_Click()
DoCmd.RunCommand acCmdSaveRecord
gigi.Value = -1
gitmedi.Visible = False
gitti.Visible = True
Me.Refresh
SaveAttachments ("c:\Temp")
End Sub



Kur@l

Kur@l

Uzman
266
 43
 59
 2.034
 05/11/2008
 -
 
 Ofis 2010 32 Bit
 01/05/2019,23:41
Çözüldü 
Bu söylediğinizle ilgili Seruz hocanın bir desen örneği vardı onu bulup yapmamız lazım. Ben araştırıp bulduğumda eklerim. Kolay gelsin.



komşuda dülger mi var geliyor keser sesi,
ustalar konuşunca çıraklar keser sesi.

...........
Seruz

Seruz

Uzman
47
Se.... UZ....
 47
 7
 1.566
 30/10/2008
822
 Tekirdağ
 BT Şefi
 Ofis XP
 13/06/2019,17:06
Çözüldü 
Merhabalar, Sanırım aşağıdaki konudaki örnekten bahsediyorsunuz.
formdaki bilgileri ilgili kişiye eposta olarak gönderme
3.sayfada örnek dosya, 5.sayfada mail örneğinin resmi var.

Ayrıca aynı örnek veya benzerini aşağıdaki konuda bulabilirsiniz.
Ünvana Göre Mail Gönderimi


Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs


Konuyu Okuyanlar: 1 Ziyaretçi

Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Çözüldü Saat 17:00Da Otomatik Mail Atsın haziran4 6 246 26/04/2019, 15:52
Son Yorum: ozanakkaya
Çözüldü Aynı Tabloda İkitane Otomatik Sayı Alanı Verme respectful 13 747 22/04/2019, 23:36
Son Yorum: halily
Çözüldü Öncelik Sırasıyle Tabloda Veri Listeleme. brkby 1 136 21/04/2019, 17:45
Son Yorum: halily
Çözüldü Mysql 5.7 Php 7.3 Guncellemesinden Sonra Smtp Mail Gönderemiyorum zetyu 6 300 10/04/2019, 00:19
Son Yorum: zetyu
Çözüldü Mail Gönderirken Gövdeye Yazı Aralarına Resim Eklemek Ve Satır Ara Boşlukları zetyu 6 391 22/03/2019, 23:52
Son Yorum: zetyu

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2019 MyBB Group.