[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 182
  • Last Modified:

Second tracer letter in one button

How would I need to modify the code below to allow for a second letter to got out. I will be pulling from the same form, but it will be sending different field values and it will be going to a different user group. Trying to get this one button to send both newsletter style messages.
Sub Click(Source As Button)
	Dim s As New NotesSession
	Dim w As New NotesUIWorkspace
	Dim db As NotesDatabase
	Dim v As NotesView
	Dim c As NotesDocumentCollection
	Dim doc As NotesDocument
	Dim key As String
	Dim cur As NotesDocument
	Set db = s.CurrentDatabase
	Set doc = w.CurrentDocument.Document
	key = doc.ussales(0)    'get the name of office (view category) from the current document
	Set v = db.GetView( "newsletter" ) 'maybe you'll have to create the view that is categorized by office
	Set c = v.GetAllDocumentsByKey( key, True )
	Dim newDoc As New NotesDocument( db )
	Dim rt As NotesRichTextItem
	Set rt = newDoc.CreateRichTextItem( "Body" )
	Dim rtsHeader As NotesRichTextStyle, rtsNormal As NotesRichTextStyle
	Set rtsHeader = s.CreateRichTextStyle  
	Set rtsNormal = s.CreateRichTextStyle
	
	rtsHeader.NotesFont = FONT_COURIER   'it's fixed size font, good for tabbed tables
	rtsHeader.FontSize = 12
	rtsHeader.Bold = True
	
	rtsNormal.NotesFont = FONT_COURIER
	rtsNormal.FontSize = 10
	rtsNormal.Bold = False
	
	Call rt.AppendStyle( rtsHeader )
	
	Call rt.AddNewLine( 3 )
	Call rt.AppendText( "Employee #" )
	Call rt.AddTab( 1 )
	Call rt.AppendText( "Current Asset" )
	Call rt.AddTab( 2 )
	Call rt.AppendText( "New Asset " )
	Call rt.AddTab( 2 )
	Call rt.AppendText( "Current Mon Asset" )
	Call rt.AddTab( 2 )
	Call rt.AppendText( "New  Mon Asset" )
	Call rt.AddNewLine( 1 )
	
	Call rt.AppendStyle( rtsNormal )     'The style that would be applied on text bellow header
	
	Set cur = c.GetFirstDocument
	Do Until cur Is Nothing
		Call rt.AddNewLine( 1 )
		Call rt.AppendText( cur.emp_num(0) )
		Call rt.AddTab( 2 )
		Call rt.AppendText( cur.current_asset(0) )
		Call rt.AddTab( 2 )
		Call rt.AppendText( cur.new_asset(0) )
		Call rt.AddTab( 1 )
		Call rt.AppendText( cur.current_mon_asset(0) )
		Call rt.AddTab( 3 )
		Call rt.AppendText( cur.new_mon_asset(0) )
		Call rt.AddTab( 2 )
		Call rt.AppendDocLink( cur, "Link to document " )  'add link to doc to the end
		
		Set cur = c.GetNextDocument( cur )
	Loop
	newDoc.Form = "Memo"
	newDoc.Subject = "IBPC Refresh DLM Update"' + cur.office_num_adjusted
	Call newDoc.Save( True, True )
	Call newDoc.Send( True, "Field Technology" )
	
	
End Sub

Open in new window

0
jforget1
Asked:
jforget1
  • 3
  • 3
1 Solution
 
SysExpertCommented:
this section needs to be copied and changed . It goes jus before the End Sub

It will send out another doc, but you need to change the parameters for what data and people it is going to

        Dim newDoc As New NotesDocument( db )
        Dim rt As NotesRichTextItem
        Set rt = newDoc.CreateRichTextItem( "Body" )
        Dim rtsHeader As NotesRichTextStyle, rtsNormal As NotesRichTextStyle
        Set rtsHeader = s.CreateRichTextStyle  
        Set rtsNormal = s.CreateRichTextStyle
       
        rtsHeader.NotesFont = FONT_COURIER   'it's fixed size font, good for tabbed tables
        rtsHeader.FontSize = 12
        rtsHeader.Bold = True
       
        rtsNormal.NotesFont = FONT_COURIER
        rtsNormal.FontSize = 10
        rtsNormal.Bold = False
       
        Call rt.AppendStyle( rtsHeader )
       
        Call rt.AddNewLine( 3 )
        Call rt.AppendText( "Employee #" )
        Call rt.AddTab( 1 )
        Call rt.AppendText( "Current Asset" )
        Call rt.AddTab( 2 )
        Call rt.AppendText( "New Asset " )
        Call rt.AddTab( 2 )
        Call rt.AppendText( "Current Mon Asset" )
        Call rt.AddTab( 2 )
        Call rt.AppendText( "New  Mon Asset" )
        Call rt.AddNewLine( 1 )
       
        Call rt.AppendStyle( rtsNormal )     'The style that would be applied on text bellow header
       
        Set cur = c.GetFirstDocument
        Do Until cur Is Nothing
                Call rt.AddNewLine( 1 )
                Call rt.AppendText( cur.emp_num(0) )
                Call rt.AddTab( 2 )
                Call rt.AppendText( cur.current_asset(0) )
                Call rt.AddTab( 2 )
                Call rt.AppendText( cur.new_asset(0) )
                Call rt.AddTab( 1 )
                Call rt.AppendText( cur.current_mon_asset(0) )
                Call rt.AddTab( 3 )
                Call rt.AppendText( cur.new_mon_asset(0) )
                Call rt.AddTab( 2 )
                Call rt.AppendDocLink( cur, "Link to document " )  'add link to doc to the end
               
                Set cur = c.GetNextDocument( cur )
        Loop
        newDoc.Form = "Memo"
        newDoc.Subject = "IBPC Refresh DLM Update"' + cur.office_num_adjusted
        Call newDoc.Save( True, True )
        Call newDoc.Send( True, "Field Technology" )
       

I hope this helps !
0
 
jforget1Author Commented:
Do I need to append any of the items with say a "2" so there is not a conflict with the first letter which goes out?
0
 
jforget1Author Commented:
Have been playing around with this and have it close. The only issue is how do I adjust the "Body" for the second email, it initially told me body was already declared, but changing it to Body2 produced a black email.
Sub Click(Source As Button)
	Dim s As New NotesSession
	Dim w As New NotesUIWorkspace
	Dim db As NotesDatabase
	Dim v As NotesView
	Dim c As NotesDocumentCollection
	Dim doc As NotesDocument
	Dim key As String
	Dim cur As NotesDocument
	Set db = s.CurrentDatabase
	Set doc = w.CurrentDocument.Document
	key = doc.ussales(0)    'get the name of office (view category) from the current document
	Set v = db.GetView( "newsletter" ) 'maybe you'll have to create the view that is categorized by office
	Set c = v.GetAllDocumentsByKey( key, True )
	Dim newDoc As New NotesDocument( db )
	Dim rt As NotesRichTextItem
	Set rt = newDoc.CreateRichTextItem( "Body" )
	Dim rtsHeader As NotesRichTextStyle, rtsNormal As NotesRichTextStyle
	Set rtsHeader = s.CreateRichTextStyle  
	Set rtsNormal = s.CreateRichTextStyle
	
	rtsHeader.NotesFont = FONT_COURIER   'it's fixed size font, good for tabbed tables
	rtsHeader.FontSize = 12
	rtsHeader.Bold = True
	
	rtsNormal.NotesFont = FONT_COURIER
	rtsNormal.FontSize = 10
	rtsNormal.Bold = False
	
	Call rt.AppendStyle( rtsHeader )
	
	Call rt.AddNewLine( 3 )
	Call rt.AppendText( "Employee #" )
	Call rt.AddTab( 1 )
	Call rt.AppendText( "Current Asset" )
	Call rt.AddTab( 2 )
	Call rt.AppendText( "New Asset " )
	Call rt.AddTab( 2 )
	Call rt.AppendText( "Current Mon Asset" )
	Call rt.AddTab( 2 )
	Call rt.AppendText( "New  Mon Asset" )
	Call rt.AddNewLine( 1 )
	
	Call rt.AppendStyle( rtsNormal )     'The style that would be applied on text bellow header
	
	Set cur = c.GetFirstDocument
	Do Until cur Is Nothing
		Call rt.AddNewLine( 1 )
		Call rt.AppendText( cur.emp_num(0) )
		Call rt.AddTab( 2 )
		Call rt.AppendText( cur.current_asset(0) )
		Call rt.AddTab( 2 )
		Call rt.AppendText( cur.new_asset(0) )
		Call rt.AddTab( 1 )
		Call rt.AppendText( cur.current_mon_asset(0) )
		Call rt.AddTab( 3 )
		Call rt.AppendText( cur.new_mon_asset(0) )
		Call rt.AddTab( 2 )
		Call rt.AppendDocLink( cur, "Link to document " )  'add link to doc to the end
		
		Set cur = c.GetNextDocument( cur )
	Loop
	newDoc.Form = "Memo"
	newDoc.Subject = "IBPC Refresh DLM Update"' + cur.office_num_adjusted
	Call newDoc.Save( True, True )
	Call newDoc.Send( True, "Field Technology" )
	
	
	Dim newDoc2 As New NotesDocument( db )
	Dim rt2 As NotesRichTextItem
	Set rt2 = newDoc.CreateRichTextItem( "Body2" )
	Dim rtsHeader2 As NotesRichTextStyle,  rtsNormal2 As NotesRichTextStyle
	Set rtsHeader2 = s.CreateRichTextStyle  
	Set rtsNormal2 = s.CreateRichTextStyle
	
	rtsHeader2.NotesFont = FONT_COURIER   'it's fixed size font, good for tabbed tables
	rtsHeader2.FontSize = 12
	rtsHeader2.Bold = True
	
	rtsNormal2.NotesFont = FONT_COURIER
	rtsNormal2.FontSize = 10
	rtsNormal2.Bold = False
	
	Call rt2.AppendStyle( rtsHeader2 )
	
	Call rt2.AddNewLine( 3 )
	Call rt2.AppendText( "Employee #" )
	Call rt2.AddTab( 1 )
	Call rt2.AppendText( "Current Asset" )
	Call rt2.AddTab( 2 )
	Call rt2.AppendText( "New Asset " )
	Call rt2.AddTab( 2 )
	
	Call rt2.AppendStyle( rtsNormal )     'The style that would be applied on text bellow header
	
	Set cur = c.GetFirstDocument
	Do Until cur Is Nothing
		Call rt2.AddNewLine( 1 )
		Call rt2.AppendText( cur.emp_num(0) )
		Call rt2.AddTab( 2 )
		Call rt2.AppendText( cur.current_asset(0) )
		Call rt2.AddTab( 2 )
		Call rt2.AppendText( cur.new_asset(0) )
		Call rt2.AddTab( 1 )
		Call rt2.AppendDocLink( cur, "Link to document " )  'add link to doc to the end
		
		Set cur = c.GetNextDocument( cur )
	Loop
	newDoc2.Form = "Memo"
	newDoc2.Subject = "IBPC Refresh DLM Update 2"' + cur.office_num_adjusted
	Call newDoc2.Save( True, True )
	Call newDoc2.Send( True, "Joseph R Forget/Bsg/MetLife/US@MetLife" )
	
End Sub

Open in new window

0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
SysExpertCommented:
Set rt2 = newDoc.CreateRichTextItem( "Body2" )


needs to be

Set rt2 = newDoc2.CreateRichTextItem( "Body2" )
0
 
SysExpertCommented:
Set rt2 = newDoc.CreateRichTextItem( "Body2" )


needs to be

Set rt2 = newDoc2.CreateRichTextItem( "Body2" )
0
 
jforget1Author Commented:
Thanks for the help here.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 3
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now