How to retrieve the next document number for Receivables Management documents when you use the Miscellaneous Routines Assembly in eConnect


INTRODUCTION

This article describes how to retrieve the next document number for Receivables Management documents when you use the Miscellaneous Routines Assembly in eConnect in Microsoft Dynamics GP.

MORE INFORMATION

The Miscellaneous Routines Assembly in eConnect contains methods that you can use to retrieve the next document number for various document types in Microsoft Dynamics GP.

The following sample code illustrates how to retrieve the next document number for Receivables Management documents by using Microsoft Visual C# code and by using Microsoft Visual Basic .NET 2003 code.

Before you use the sample code, you have to set the following references:

• eConnect.MiscRoutines.dll
• System.Enterprise.Services



     
To set these references, follow these steps:
1. In Microsoft Visual Studio, right-click References . In Solution Explorer , click Add Reference .
2. Open the following folder:

C:\Program Files\Microsoft Great Plains\eConnect9\Objects\DOT NET

3. Click the eConnect.MiscRoutines.dll reference.
4. Under .NET , click the System.Enterprise.Services reference.

Microsoft Visual C#

//C#using System;using System.Collections.Generic;using System.Text;using Microsoft.GreatPlains.eConnect.MiscRoutines;namespace MiscRoutinesConsole{    class ClassMiscRoutines    {        static void Main(string[] args)        {            try            {                string cnString = @"Data Source=MYSERVER;initial catalog=TWO;integrated security=SSPI;                persist security info=False;packet size=4096";                                GetNextDocNumbers oNextDoc = new GetNextDocNumbers();                string nextRMNumber = "";                GetNextDocNumbers.RMPaymentType docType;                Console.WriteLine("Please select a document type: ");                Console.WriteLine("1 = RM Credit Memo");                Console.WriteLine("2 = RM Debit Memo");                Console.WriteLine("3 = RM Finance Charge");                Console.WriteLine("4 = RM Invoice");                Console.WriteLine("5 = RM Payment");                Console.WriteLine("6 = RM Return");                Console.WriteLine("7 = RM Scheduled Payment");                Console.WriteLine("8 = RM Service Repair");                Console.WriteLine("9 = RM Warranty");                string sDocType = Console.ReadLine().ToString();                switch (sDocType)                {                    case "1":                        docType = GetNextDocNumbers.RMPaymentType.RMCreditMemo;                        break;                    case "2":                        docType = GetNextDocNumbers.RMPaymentType.RMDebitMemos;                        break;                    case "3":                        docType = GetNextDocNumbers.RMPaymentType.RMFinanceCharges;                        break;                    case "4":                        docType = GetNextDocNumbers.RMPaymentType.RMInvoices;                        break;                    case "5":                        docType = GetNextDocNumbers.RMPaymentType.RMPayments;                        break;                    case "6":                        docType = GetNextDocNumbers.RMPaymentType.RMReturn;                        break;                    case "7":                        docType = GetNextDocNumbers.RMPaymentType.RMScheduledPayments;                        break;                    case "8":                        docType = GetNextDocNumbers.RMPaymentType.RMServiceRepairs;                        break;                    case "9":                        docType = GetNextDocNumbers.RMPaymentType.RMWarranty;                        break;                    default:                        throw new Exception("Invalid Document Type");                }                nextRMNumber = oNextDoc.GetNextRMNumber(GetNextDocNumbers.IncrementDecrement.Increment, docType, cnString);                Console.WriteLine("The next Document Number is " + nextRMNumber);                Console.WriteLine("Press <Enter> to close...");                Console.Read();            }            catch (Exception ex)            {                Console.WriteLine(ex.ToString());                Console.WriteLine("Press <Enter> to close...");                Console.Read();            }        }    }} 

Microsoft Visual Basic .NET 2003

'Visual Basic .NETImports Microsoft.GreatPlains.eConnect.MiscRoutinesModule MiscRoutines    Sub Main()        Try            Dim cnString As String = "Data Source=MYSERVER;initial catalog=TWO;integrated security=SSPI;            persist security info=False;packet size=4096"                        Dim oNextDoc As New GetNextDocNumbers()            Dim nextRMNumber As String = ""            Dim docType As GetNextDocNumbers.RMPaymentType            Console.WriteLine("Please select a document type: ")            Console.WriteLine("1 = RM Credit Memo")            Console.WriteLine("2 = RM Debit Memo")            Console.WriteLine("3 = RM Finance Charge")            Console.WriteLine("4 = RM Invoice")            Console.WriteLine("5 = RM Payment")            Console.WriteLine("6 = RM Return")            Console.WriteLine("7 = RM Scheduled Payment")            Console.WriteLine("8 = RM Service Repair")            Console.WriteLine("9 = RM Warranty")            Dim sDocType As String = Console.ReadLine().ToString()            Select Case (sDocType)                Case "1"                    docType = GetNextDocNumbers.RMPaymentType.RMCreditMemo                Case "2"                    docType = GetNextDocNumbers.RMPaymentType.RMDebitMemos                Case "3"                    docType = GetNextDocNumbers.RMPaymentType.RMFinanceCharges                Case "4"                    docType = GetNextDocNumbers.RMPaymentType.RMInvoices                Case "5"                    docType = GetNextDocNumbers.RMPaymentType.RMPayments                Case "6"                    docType = GetNextDocNumbers.RMPaymentType.RMReturn                Case "7"                    docType = GetNextDocNumbers.RMPaymentType.RMScheduledPayments                Case "8"                    docType = GetNextDocNumbers.RMPaymentType.RMServiceRepairs                Case "9"                    docType = GetNextDocNumbers.RMPaymentType.RMWarranty                Case Else                    Throw New Exception("Invalid Document Type")            End Select            nextRMNumber = oNextDoc.GetNextRMNumber(GetNextDocNumbers.IncrementDecrement.Increment, docType, cnString)            Console.WriteLine("The next Document Number is " & nextRMNumber)            Console.WriteLine("Press <Enter> to close...")            Console.Read()        Catch ex As Exception            Console.WriteLine(ex.ToString())            Console.WriteLine("Press <Enter> to close...")            Console.Read()        End Try    End SubEnd Module