SQL Scripts for Microsoft Dynamics GP: Extract Payables Transactions from All Companies

Microsoft Dynamics GPThis script is part of the SQL Scripts for Microsoft Dynamics GP where I will be posting the scripts I wrote against Microsoft Dynamics GP over the 19 years before I stopped working with Dynamics GP.

This script was written for a client to extract Payables transactions from all companies tnto a temporary table; the script is run from the system database (typically called DYNAMICS) and selects all linked company databases.

The start and end years can be specified by the user in the highlighted variables.

/*
Created by Ian Grieve of azurecurve | Ramblings of an IT Professional (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int). */
CREATE TABLE #SupplierExtract( INTERID CHAR(50) ,Company_Name CHAR(100) ,Vendor_ID CHAR(15) ,Vendor_Name CHAR(65) ,Document_Type CHAR(20) ,Document_Date datetime ,Voucher_Number CHAR(21) ,Document_Number CHAR(21) ,Document_Amount NUMERIC(19,5) ,Document_Net NUMERIC(19,5) ,Document_Tax NUMERIC(19,5) ,Payment_Voucher_Number CHAR(21) ,Payment_Doc_Number CHAR(21) ,Payment_Date datetime ,Apply_Date datetime ,Apply_Amount NUMERIC(19,5) ,Payment_Type CHAR(20) ) GO DECLARE @StartYear CHAR(4) = 2017 DECLARE @EndYear CHAR(4) = 2024 DECLARE @SQL NVARCHAR(MAX) SELECT @SQL = STUFF(( SELECT CHAR(13) +'select '''+INTERID+''' AS Database_Name, '''+CMPNYNAM+''' AS Division, P.VENDORID AS Vendor_ID, PM.VENDNAME AS Vendor_Name, case P.DOCTYPE when 1 then ''Invoice'' when 2 then ''Finance Charge'' when 3 then ''Misc Charge'' when 4 then ''Return'' when 5 then ''Credit Memo'' when 6 then ''Payment'' else '''' end AS Document_Type, P.DOCDATE AS Document_Date, P.VCHRNMBR AS Voucher_Number, P.DOCNUMBR AS Document_Number, P.DOCAMNT AS Document_Amount, P.PRCHAMNT AS Document_Net, P.TAXAMNT AS Document_Tax, coalesce(PA.VCHRNMBR,'''') AS Payment_Voucher_Number, coalesce(P2.DOCNUMBR,'''') AS Payment_Doc_Number, coalesce(P2.DOCDATE,''1/1/1900'') AS Payment_Date, coalesce(PA.DATE1,''1/1/1900'') AS Apply_Date, PA.APPLDAMT AS Apply_Amount, case PA.DOCTYPE when 1 then ''Invoice'' when 2 then ''Finance Charge'' when 3 then ''Misc Charge'' when 4 then ''Return'' when 5 then ''Credit Memo'' when 6 then ''Payment'' else '''' end AS Payment_Type from (select VENDORID, DOCTYPE, DOCDATE, VCHRNMBR, DOCNUMBR, DOCAMNT, PRCHAMNT, TAXAMNT, VOIDED from '+INTERID+'.dbo.PM30200 with (NoLock) union all select VENDORID, DOCTYPE, DOCDATE, VCHRNMBR, DOCNUMBR, DOCAMNT, PRCHAMNT, TAXAMNT, VOIDED from '+INTERID+'.dbo.PM20000 with (NoLock)) P left outer join (select VENDORID, APTVCHNM, APTODCTY, APFRDCNM, DOCTYPE, DOCDATE, APPLDAMT, VCHRNMBR, DATE1, GLPOSTDT, case POSTED when 0 then ''Unposted'' else ''Posted'' end POSTED from '+INTERID+'.dbo.PM10200 with (NoLock) UNION select VENDORID, APTVCHNM, APTODCTY, APFRDCNM, DOCTYPE, DOCDATE, APPLDAMT, VCHRNMBR, DATE1, GLPOSTDT, ''Posted'' AS POSTED from '+INTERID+'.dbo.PM30300 with (NoLock) UNION select VENDORID, VCHRNMBR AS APTVCHNM, DOCTYPE AS APTODCTY, APTODCNM AS APFRDCNM, APTODCTY AS DOCTYPE, APTODCDT AS DOCDATE, APPLDAMT, APTVCHNM AS VCHRNMBR, DATE1, GLPOSTDT, case POSTED when 0 then ''Unposted'' else ''Posted'' end POSTED from '+INTERID+'.dbo.PM10200 with (NoLock) union select VENDORID, VCHRNMBR AS APTVCHNM, DOCTYPE AS APTODCTY, APTODCNM AS APFRDCNM, APTODCTY AS DOCTYPE, APTODCDT AS DOCDATE, APPLDAMT, APTVCHNM AS VCHRNMBR, DATE1, GLPOSTDT, ''Posted'' AS POSTED from '+INTERID+'.dbo.PM30300 with (NoLock)) PA on P.VCHRNMBR = PA.APTVCHNM and P.VENDORID = PA.VENDORID and P.DOCTYPE = PA.APTODCTY left outer join (select VCHRNMBR, DOCTYPE, DOCNUMBR, DOCDATE from '+INTERID+'.dbo.PM20000 with (NoLock) union all select VCHRNMBR, DOCTYPE, DOCNUMBR, DOCDATE from '+INTERID+'.dbo.PM30200 with (NoLock)) P2 on P2.VCHRNMBR = PA.VCHRNMBR and P2.DOCTYPE = PA.DOCTYPE left outer join '+INTERID+'.dbo.PM00200 PM with (NoLock) on P.VENDORID = PM.VENDORID where P.DOCTYPE in (1,2,3,4,5,6) and P.VOIDED = 0 AND (P.DOCDATE BETWEEN '''+@StartYear+'/04/01'' AND '''+@EndYear+'/03/31'')' FROM SY01500 with (NoLock) WHERE CMPNYNAM NOT LIKE '%Test%' FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '') INSERT INTO #SupplierExtract ( InterID, Company_Name, Vendor_ID, Vendor_Name, Document_Type, Document_Date, Voucher_Number, Document_Number, Document_Amount, Document_Net, Document_Tax, Payment_Voucher_Number, Payment_Doc_Number, Payment_Date, Apply_Date, Apply_Amount, Payment_Type) EXEC sys.sp_executesql @SQL GO SELECT * FROM #SupplierExtract GO DROP TABLE #SupplierExtract GO

Click to show/hide the SQL Scripts for Microsoft Dynamics GP Series Index

In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… Process Multiple Inventory Put-aways Using a Batch Job

Microsoft Dynamics 365 Business CentralThis post is part of the In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… series and of the wider In Microsoft Dynamics 365 Business Central, how do I… series which I am posting as I familiarise myself with Microsoft Dynamics 365 Business Central.

In a previous article of this series on understanding inventory put-aways, I mentioned there was three ways in which an inventory put-away could be processed:

  1. Process an Inventory Put-away from the Source Document
  2. Process Multiple Inventory Put-aways Using a Batch Job
  3. Process an Inventory Put-away in Two Steps by Releasing the Source Document

In this article, I am going to take walk through processing inventory put-aways using a batch job for the BLUE location on which I enabled Require Put-away.

To use the batch job for creating inventory put-aways, search for the Create Inventory Put-away/Pick/Movement page.

The options on this page will need to be configured to restrict which incoming documents have inventory put-aways created. I have opted for all (released) purchase orders; click OK to create the put-aways or Schedule to schedule the batch job to run at a designated time:

Create Inventory Put-away/Pick/Movement

Continue reading “In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… Process Multiple Inventory Put-aways Using a Batch Job”

SQL Scripts for Microsoft Dynamics GP: View for Payables Transactions Extract

Microsoft Dynamics GPThis script is part of the SQL Scripts for Microsoft Dynamics GP where I will be posting the scripts I wrote against Microsoft Dynamics GP over the 19 years before I stopped working with Dynamics GP.

This script creates a view on payables transactions which was created for a client who was migrating from Dynamics GP to another ERP system.

/*
Created by Ian Grieve of azurecurve | Ramblings of an IT Professional (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int). */
CREATE VIEW uv_AZRCRV_SupplierTransactionExtract AS SELECT DB_NAME() AS Database_Name, SY.CMPNYNAM AS Division, P.VENDORID AS Vendor_ID, PM.VENDNAME AS Vendor_Name, case P.DOCTYPE when 1 then 'Invoice' when 2 then 'Finance Charge' when 3 then 'Misc Charge' when 4 then 'Return' when 5 then 'Credit Memo' when 6 then 'Payment' else '' end AS Document_Type, P.DOCDATE AS Document_Date, P.VCHRNMBR AS Voucher_Number, P.DOCNUMBR AS Document_Number, P.DOCAMNT AS Document_Amount, P.PRCHAMNT AS Document_Net, P.TAXAMNT AS Document_Tax, coalesce(PA.VCHRNMBR,'') AS Payment_Voucher_Number, coalesce(P2.DOCNUMBR,'') AS Payment_Doc_Number, coalesce(P2.DOCDATE,'1/1/1900') AS Payment_Date, coalesce(PA.DATE1,'1/1/1900') AS Apply_Date, PA.APPLDAMT AS Apply_Amount, case PA.DOCTYPE when 1 then 'Invoice' when 2 then 'Finance Charge' when 3 then 'Misc Charge' when 4 then 'Return' when 5 then 'Credit Memo' when 6 then 'Payment' else '' end AS Payment_Type from (select VENDORID, DOCTYPE, DOCDATE, VCHRNMBR, DOCNUMBR, DOCAMNT, PRCHAMNT, TAXAMNT, VOIDED from dbo.PM30200 union all select VENDORID, DOCTYPE, DOCDATE, VCHRNMBR, DOCNUMBR, DOCAMNT, PRCHAMNT, TAXAMNT, VOIDED from dbo.PM20000) P left outer join (select VENDORID, APTVCHNM, APTODCTY, APFRDCNM, DOCTYPE, DOCDATE, APPLDAMT, VCHRNMBR, DATE1, GLPOSTDT, case POSTED when 0 then 'Unposted' else 'Posted' end POSTED from dbo.PM10200 UNION select VENDORID, APTVCHNM, APTODCTY, APFRDCNM, DOCTYPE, DOCDATE, APPLDAMT, VCHRNMBR, DATE1, GLPOSTDT, 'Posted' AS POSTED from dbo.PM30300 UNION select VENDORID, VCHRNMBR AS APTVCHNM, DOCTYPE AS APTODCTY, APTODCNM AS APFRDCNM, APTODCTY AS DOCTYPE, APTODCDT AS DOCDATE, APPLDAMT, APTVCHNM AS VCHRNMBR, DATE1, GLPOSTDT, case POSTED when 0 then 'Unposted' else 'Posted' end POSTED from dbo.PM10200 union select VENDORID, VCHRNMBR AS APTVCHNM, DOCTYPE AS APTODCTY, APTODCNM AS APFRDCNM, APTODCTY AS DOCTYPE, APTODCDT AS DOCDATE, APPLDAMT, APTVCHNM AS VCHRNMBR, DATE1, GLPOSTDT, 'Posted' AS POSTED from dbo.PM30300) PA on P.VCHRNMBR = PA.APTVCHNM and P.VENDORID = PA.VENDORID and P.DOCTYPE = PA.APTODCTY left outer join (select VCHRNMBR, DOCTYPE, DOCNUMBR, DOCDATE from dbo.PM20000 union all select VCHRNMBR, DOCTYPE, DOCNUMBR, DOCDATE from dbo.PM30200) P2 on P2.VCHRNMBR = PA.VCHRNMBR and P2.DOCTYPE = PA.DOCTYPE left outer join dbo.PM00200 PM on P.VENDORID = PM.VENDORID INNER JOIN D20..SY01500 AS SY WITH (NOLOCK) ON INTERID = DB_NAME() where P.DOCTYPE in (1,2,3,4,5,6) and P.VOIDED = 0 AND (P.VENDORID NOT LIKE '5%' AND P.VENDORID NOT LIKE '3%') GO GRANT SELECT ON uv_AZRCRV_SupplierTransactionExtract TO DYNGRP GO SELECT * FROM uv_AZRCRV_SupplierTransactionExtract GO

Click to show/hide the SQL Scripts for Microsoft Dynamics GP Series Index

How To Install Microsoft SQL Server 2022: Available Editions

Microsoft SQL ServerThis article is part of the series on How To Install Microsoft SQL Server 2022; I do not claim to be an expert on SQL Server and this series is installing SQL Server in a development/testing/demo environment. If you’re installing SQL into a production environment there will be additional work required to harden the SQL Server and avoid security issues.

There are a number of editions of Microsoft SQL Server available:

Edition Definition
Express SQL Server Express edition is the entry-level, free database and is ideal for learning and building desktop and small server data-driven applications. It is the best choice for independent software vendors, developers, and hobbyists building client applications.
Developer SQL Server Developer edition lets developers build any kind of application on top of SQL Server. It includes all the functionality of Enterprise edition, but is licensed for use as a development and test system, not as a production server. SQL Server Developer is an ideal choice for people who build and test applications.
Web SQL Server Web edition is a low total-cost-of-ownership option for Web hosters (including choosing Web edition on IaaS on Azure) and Web VAPs to provide scalability, affordability, and manageability capabilities for small to large-scale Web properties.
Standard SQL Server Standard edition delivers basic data management and business intelligence database for departments and small organizations to run their applications and supports common development tools for on-premises and cloud, enabling effective database management with minimal IT resources.
Enterprise The premium offering, SQL Server Enterprise edition delivers comprehensive high-end datacenter capabilities with blazing-fast performance, unlimited virtualization, and end-to-end business intelligence, enabling high service levels for mission-critical workloads and end-user access to data insights.

Full details of the editions of Microsoft SQL Server can be read here.

The environment I am installing is for development, testing and demo purposes. I recently checked the licence for the Developer Edition to check if it allowed more than just development and testing; specifically, I was interested in the possibility of using it for demo purposes and found that this was a permitted use.

This was good news and the Developer Edition is the one which I will be installing in this series; the version doesn’t actually make much difference to the install process, so you should be able to use this series for installing any of the editions.

SQL Scripts for Microsoft Dynamics GP: List General Ledger Transactions (Excluding Year End Journals)

Microsoft Dynamics GPThis script is part of the SQL Scripts for Microsoft Dynamics GP where I will be posting the scripts I wrote against Microsoft Dynamics GP over the 19 years before I stopped working with Dynamics GP.

This script returns a list of posted General Ledger journals, excluding the BBF and P/L journals created by the year end closing process.

/*
Created by Ian Grieve of azurecurve | Ramblings of an IT Professional (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int). */
SELECT YEAR1 AS Trx_Year, TRXDATE AS Trx_Date, JRNENTRY AS Journal_Entry, ORTRXSRC AS Originating_TRX_Source, REFRENCE AS Reference, ORMSTRID AS Originating_Master_ID, ORMSTRNM AS Originating_Master_Name, ORDOCNUM AS Originating_Doc_Number, DEBITAMT AS Debit_Amount, CRDTAMNT AS Credit_Amount, ORDBTAMT AS Originating_Debit_Amt, ORCRDAMT AS Originating_Credit_Amt, ACTNUMST AS Account_Number, ACTDESCR AS Account_Description, ACCATDSC AS Account_Category, CURNCYID AS Currency_ID, XCHGRATE AS Exchange_Rate, EXCHDATE AS Exchange_Date, USWHPSTD AS User_Who_Posted FROM ( SELECT ACTINDX, OPENYEAR YEAR1, TRXDATE, JRNENTRY, ORTRXSRC, REFRENCE, ORDOCNUM, ORMSTRID, ORMSTRNM, DEBITAMT, CRDTAMNT, ORDBTAMT, ORCRDAMT, CURNCYID, XCHGRATE, EXCHDATE, USWHPSTD FROM GL20000 --Year-to-Date Transaction Open (GL20000) WHERE SOURCDOC NOT IN ('BBF','P/L') AND VOIDED = 0 UNION ALL SELECT ACTINDX, HSTYEAR YEAR1, TRXDATE, JRNENTRY, ORTRXSRC, REFRENCE, ORDOCNUM, ORMSTRID, ORMSTRNM, DEBITAMT, CRDTAMNT, ORDBTAMT, ORCRDAMT, CURNCYID, XCHGRATE, EXCHDATE, USWHPSTD FROM GL30000 --Account Transaction History (GL30000) WHERE SOURCDOC NOT IN ('BBF','P/L') AND VOIDED = 0 ) ['Posted GL Transactions'] INNER JOIN GL00105 AS ['Account Index Master'] --Account Index Master (GL00105) ON ['Posted GL Transactions'].ACTINDX = ['Account Index Master'].ACTINDX INNER JOIN GL00100 AS ['Account Master'] --Breakdown Account Master (GL00100) ON ['Posted GL Transactions'].ACTINDX = ['Account Master'].ACTINDX INNER JOIN GL00102 AS ['Account Category Master'] --Account Category Master (GL00102) ON ['Account Master'].ACCATNUM = ['Account Category Master'].ACCATNUM

Click to show/hide the SQL Scripts for Microsoft Dynamics GP Series Index

In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… Process an Inventory Put-away from the Source Document

Microsoft Dynamics 365 Business CentralThis post is part of the In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… series and of the wider In Microsoft Dynamics 365 Business Central, how do I… series which I am posting as I familiarise myself with Microsoft Dynamics 365 Business Central.

In a previous article of this series on understanding inventory put-aways, I mentioned there was three ways in which an inventory put-away could be processed:

  1. Process an Inventory Put-away from the Source Document
  2. Process Multiple Inventory Put-aways Using a Batch Job
  3. Process an Inventory Put-away in Two Steps by Releasing the Source Document

In this article, I am going to take walk through the processing an inventory put-away from the source document using the BLUE location on which I enabled Require Put-away.

To create an inventory put-away for a purchase order, open the Purchase Order page and click the Process » Create Inventory Put-away/Pick/Movement action:

Purchase Order page showing the put-away action button

Continue reading “In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… Process an Inventory Put-away from the Source Document”

SQL Scripts for Microsoft Dynamics GP: List GL Accounts With Notes

Microsoft Dynamics GPThis script is part of the SQL Scripts for Microsoft Dynamics GP where I will be posting the scripts I wrote against Microsoft Dynamics GP over the 19 years before I stopped working with Dynamics GP.

This script returns a list of General Ledger Accounts with notes and which have been used on posted GL transactions.

/*
Created by Ian Grieve of azurecurve | Ramblings of an IT Professional (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int). */
SELECT ACTNUMST AS Account_Num ,ACTDESCR AS Account_Description ,CASE WHEN ACCTTYPE = '1' THEN 'Posting Account' WHEN ACCTTYPE = '2' THEN 'Unit Account' END AS Account_Type ,CASE WHEN PSTNGTYP = '0' THEN 'Balance Sheet' WHEN PSTNGTYP = '1' THEN 'Profit and Loss' END AS Posting_Type ,ACCATDSC AS Account_Category ,CREATDDT AS Created ,MODIFDT AS Last_Modified ,TXTFIELD AS Notes ,DATE1 AS Note_Date FROM GL00100 AS ['Account Master'] --Breakdown Account Master (GL00100) INNER JOIN GL00105 AS ['Account Index Master'] --Account Index Master (GL00105) ON ['Account Index Master'].ACTINDX = ['Account Master'].ACTINDX INNER JOIN GL00102 --Account Category Master (GL00102) ON ['Account Master'].ACCATNUM = GL00102.ACCATNUM LEFT JOIN SY03900 --Record Notes Master (SY03900) ON ['Account Master'].NOTEINDX = SY03900.NOTEINDX WHERE EXISTS ( SELECT ACTINDX FROM GL20000 as ['Year-to-Date Transaction Open'] --Year-to-Date Transaction Open (GL20000) WHERE ['Year-to-Date Transaction Open']ACTINDX = ['Account Master'].ACTINDX UNION ALL SELECT ACTINDX FROM GL30000 AS ['Account Transaction History'] --Account Transaction History (GL30000) WHERE ['Account Transaction History'].ACTINDX = ['Account Master'].ACTINDX )

Click to show/hide the SQL Scripts for Microsoft Dynamics GP Series Index

How To Install Microsoft SQL Server 2022: Series Index

Microsoft SQL ServerI’ve been creating a new dev/demo/test environment recently and have already posted some articles about how I install and configure Windows on the servers; as I am also installing the latest version of SQL Server, I decided to cover this in a series as well.

I do not claim to be an expert on SQL Server and this series is installing SQL Server in a development/testing/demo environment. If you’re installing SQL into a production environment there will be additional work required to harden the SQL Server and avoid security issues.

The series index, below will automatically update as articles in the series go live, os make sure to check back regularly (there should be two posts a week).

How To Install Microsoft SQL Server 2022
Install SQL Server Integration Services
Available Editions
Server Features
Download SQL Server 2022 Installer
Install SQL Server Database Engine
Download SQL Server Management Studio
Install SQL Server Management Studio
Download SQL Server Reporting Services
Install SQL Server Reporting Services
Configure SQL Server Reporting Services
Change SQL Server Reporting Services maxRequestLength Setting
Install SQL Server Analysis Services
SSIS Configuration For Named Instances
SSIS Configuration For Named Instances
SSIS Configuration For Named Instances

SQL Scripts for Microsoft Dynamics GP: List GL Transactions

Microsoft Dynamics GPThis script is part of the SQL Scripts for Microsoft Dynamics GP where I will be posting the scripts I wrote against Microsoft Dynamics GP over the 19 years before I stopped working with Dynamics GP.

This script returns a list of General Ledger transactions between the specified years.

/*
Created by Ian Grieve of azurecurve | Ramblings of an IT Professional (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int). */
DECLARE @StartYear AS INTEGER = 2018 DECLARE @EndYear AS INTEGER = 2023 SELECT ['Year-to-Date Transaction Open'].OPENYEAR AS 'Year' ,['Year-to-Date Transaction Open'].JRNENTRY AS 'Journal No' ,['Year-to-Date Transaction Open'].SOURCDOC AS 'Source Doc' ,['Year-to-Date Transaction Open'].REFRENCE AS 'Reference' ,['Year-to-Date Transaction Open'].DSCRIPTN AS 'Description' ,['Year-to-Date Transaction Open'].TRXDATE AS 'Trx Date' ,['Year-to-Date Transaction Open'].TRXSORCE AS 'Trx Source' ,['Account Index Master'].ACTNUMST AS 'Account Number' ,['Year-to-Date Transaction Open'].LSTDTEDT AS 'Last Edited' ,['Year-to-Date Transaction Open'].USWHPSTD AS 'User ID' ,CASE WHEN ['Year-to-Date Transaction Open'].SERIES = 1 THEN 'All' WHEN ['Year-to-Date Transaction Open'].SERIES = 2 THEN 'Financial' WHEN ['Year-to-Date Transaction Open'].SERIES = 3 THEN 'Sales' WHEN ['Year-to-Date Transaction Open'].SERIES = 4 THEN 'Purchasing' WHEN ['Year-to-Date Transaction Open'].SERIES = 5 THEN 'Inventory' WHEN ['Year-to-Date Transaction Open'].SERIES = 6 THEN 'Payroll - USA' WHEN ['Year-to-Date Transaction Open'].SERIES = 7 THEN 'Project' WHEN ['Year-to-Date Transaction Open'].SERIES = 8 THEN '' WHEN ['Year-to-Date Transaction Open'].SERIES = 9 THEN '' ELSE '3rd Party' END AS 'Series' ,['Year-to-Date Transaction Open'].SEQNUMBR / 16384 AS 'Sequence No' ,['Year-to-Date Transaction Open'].PERIODID AS 'Period ID' ,['Year-to-Date Transaction Open'].CRDTAMNT AS 'Credit Amount' ,['Year-to-Date Transaction Open'].DEBITAMT AS 'Debit Amount' ,['Year-to-Date Transaction Open'].DOCDATE AS 'Document Date' ,['Year-to-Date Transaction Open'].VOIDED AS 'Voided' FROM GL20000 AS ['Year-to-Date Transaction Open'] --Year-to-Date Transaction Open (GL20000) INNER JOIN GL00105 AS ['Account Index Master'] --Account Index Master (GL00105) ON ['Account Index Master'].ACTINDX = ['Year-to-Date Transaction Open'].ACTINDX WHERE OPENYEAR BETWEEN @StartYear AND @EndYear UNION ALL SELECT ['Account Transaction History'].HSTYEAR AS 'Year' ,['Account Transaction History'].JRNENTRY AS 'Journal No' ,['Account Transaction History'].SOURCDOC AS 'Source Doc' ,['Account Transaction History'].REFRENCE AS 'Reference' ,['Account Transaction History'].DSCRIPTN AS 'Description' ,['Account Transaction History'].TRXDATE AS 'Trx Date' ,['Account Transaction History'].TRXSORCE AS 'Trx Source' ,['Account Index Master'].ACTNUMST AS 'Account Number' ,['Account Transaction History'].LSTDTEDT AS 'Last Edited' ,['Account Transaction History'].USWHPSTD AS 'User ID' ,CASE WHEN ['Account Transaction History'].SERIES = 1 THEN 'All' WHEN ['Account Transaction History'].SERIES = 2 THEN 'Financial' WHEN ['Account Transaction History'].SERIES = 3 THEN 'Sales' WHEN ['Account Transaction History'].SERIES = 4 THEN 'Purchasing' WHEN ['Account Transaction History'].SERIES = 5 THEN 'Inventory' WHEN ['Account Transaction History'].SERIES = 6 THEN 'Payroll - USA' WHEN ['Account Transaction History'].SERIES = 7 THEN 'Project' WHEN ['Account Transaction History'].SERIES = 8 THEN '' WHEN ['Account Transaction History'].SERIES = 9 THEN '' ELSE '3rd Party' END AS 'Series' ,['Account Transaction History'].SEQNUMBR / 16384 AS 'Sequence No' ,['Account Transaction History'].PERIODID AS 'Period ID' ,['Account Transaction History'].CRDTAMNT AS 'Credit Amount' ,['Account Transaction History'].DEBITAMT AS 'Debit Amount' ,['Account Transaction History'].DOCDATE AS 'Document Date' ,['Account Transaction History'].VOIDED AS 'Voided' FROM GL30000 AS ['Account Transaction History'] --Account Transaction History (GL30000) INNER JOIN GL00105 AS ['Account Index Master'] ON ['Account Index Master'].ACTINDX = ['Account Transaction History'].ACTINDX WHERE HSTYEAR BETWEEN @StartYear AND @EndYear

Click to show/hide the SQL Scripts for Microsoft Dynamics GP Series Index

In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… Configure Inventory Put-aways

Microsoft Dynamics 365 Business CentralThis post is part of the In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I… series and of the wider In Microsoft Dynamics 365 Business Central, how do I… series which I am posting as I familiarise myself with Microsoft Dynamics 365 Business Central.

In order to use inventory put-aways, there is only one setting which needs to be configured, but it needs to be done on a per location basis.

For this example, I am using the CRONUS USA sample company and have created a new location called BLUE.

To configure the require put-away option, search for the Locations page and select the required location. On the Warehouse fasttab, enable the Require Put-away option:

Locations - Enable Require Put-away on new BLUE location

You will also need to make sure that there is a number series attached to the Inventory Put-aways Nos. and Posted Inventory Put-aways Nos. fields on the Inventory Setup card.

Bins can be used with inventory put-away documents, so you can also mark the Bin Mandatory option.

In Microsoft Dynamics 365 Business Central, how do I…

In Microsoft Dynamics 365 Business Central (Inventory and Warehouse Management), how do I…