Link Search Menu Expand Document

Fill Form 1099-INT - VB.NET

PDF SDK sample in VB.NET demonstrating ‘Fill Form 1099-INT’

Program.vb
Imports Bytescout.PDF

''' <summary>
''' This example demonstrates how to fill PDF form programmatically.
''' </summary>
Class Program

    Shared Sub Main()

        ' Map of form fields and sample values to set
        Dim fieldMap As New Dictionary(Of String, Object)()
        fieldMap.Add("c2_1[0]", True) ' Void
        fieldMap.Add("c2_1[1]", True) ' CORRECTED
        fieldMap.Add("f2_1[0]", "John Smith, 12 Palm st., Hill Valley, CA 12345") ' PAYER'S name, street address, city or town, ...
        fieldMap.Add("f2_2[0]", "123456") ' PAYER'S TIN
        fieldMap.Add("f2_3[0]", "234567") ' RECIPIENT'S TIN 
        fieldMap.Add("f2_4[0]", "John Doe") ' RECIPIENT'S name
        fieldMap.Add("f2_5[0]", "23 Elm st., 345") ' Street address (including apt. no.)
        fieldMap.Add("f2_6[0]", "Hill Valley, CA 12345") ' City Or town, state Or province, country, And ZIP Or foreign postal code
        fieldMap.Add("c2_2[0]", True) ' FATCA filing requirement
        fieldMap.Add("f2_7[0]", "345678") ' Account number (see instructions)
        fieldMap.Add("f2_8[0]", "456789") ' Payer's RTN (optional)
        fieldMap.Add("f2_9[0]", "1000.00") ' 1 Interest income
        fieldMap.Add("f2_10[0]", "11.00") '  2 Early withdrawal penalty
        fieldMap.Add("f2_11[0]", "12.00") ' 3 Interest on U.S. Savings Bonds And Treas. obligations
        fieldMap.Add("f2_12[0]", "13.00") ' 4 Federal income tax withheld
        fieldMap.Add("f2_13[0]", "14.00") ' 5 Investment expenses
        fieldMap.Add("f2_14[0]", "15.00") ' 6 Foreign tax paid
        fieldMap.Add("f2_15[0]", "16.00") ' 7 Foreign country Or U.S. possession
        fieldMap.Add("f2_16[0]", "17.00") ' 8 Tax-exempt interest
        fieldMap.Add("f2_17[0]", "18.00") ' 9  Specified private activity bond interest
        fieldMap.Add("f2_18[0]", "19.00") ' 10 Market discount
        fieldMap.Add("f2_19[0]", "20.00") ' 11 Bond premium
        fieldMap.Add("f2_20[0]", "21.00") ' 12 Bond premium on Treasury obligations
        fieldMap.Add("f2_21[0]", "22.00") ' 13 Bond premium on tax-exempt bond 
        fieldMap.Add("f2_22[0]", "567890") ' 14 Tax-exempt And tax credit bond CUSIP no.
        fieldMap.Add("f2_23[0]", "AA") ' 15 State [field 1] 
        fieldMap.Add("f2_24[0]", "BB") ' 15 State [field 2]
        fieldMap.Add("f2_25[0]", "33") ' 16 State identification no. [field 1]
        fieldMap.Add("f2_26[0]", "44") ' 16 State identification no. [field 2]
        fieldMap.Add("f2_27[0]", "30.00") ' 17 State tax withheld [field 1]
        fieldMap.Add("f2_28[0]", "40.00") ' 17 State tax withheld [field 2]

        ' Load PDF form
        Dim pdfDocument = New Document("f1099int.pdf")
        pdfDocument.RegistrationName = "demo"
        pdfDocument.RegistrationKey = "demo"

        ' Get second page ("Copy 1")
        Dim page = pdfDocument.Pages(1)

        ' Get widget by its name and change value
        For Each keyValuePair In fieldMap

            Dim annotation As Annotation = page.Annotations(keyValuePair.Key)

            If TypeOf (annotation) Is CheckBox Then
                CType(annotation, CheckBox).Checked = CType(keyValuePair.Value, Boolean)
            ElseIf TypeOf (annotation) Is EditBox Then
                CType(annotation, EditBox).Text = CType(keyValuePair.Value, String)
            End If

        Next

        ' Save modified document
        pdfDocument.Save("result.pdf")

        ' Cleanup 
        pdfDocument.Dispose()

        ' Open document in default PDF viewer app
        Dim processStartInfo As New ProcessStartInfo("result.pdf")
        processStartInfo.UseShellExecute = True
        Process.Start(processStartInfo)

    End Sub

End Class

Download Source Code (.zip)

Return to the previous page Explore PDF SDK