<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Supplier Liabilities SQL Query with currency calculation in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/supplier-liabilities-sql-query-with-currency-calculation/m-p/12553773#M2007037</link>
    <description>&lt;P&gt;Thank
you for visiting SAP Community to get answers to your questions.&lt;/P&gt;

&lt;P&gt;Since you're asking a question here for the first time, I'd like
to recommend you with the following steps so you can get the most out of your
community membership:&lt;/P&gt;

&lt;UL&gt;
 &lt;LI&gt;Please
     see: &lt;A href="https://community.sap.com/resources/questions-and-answers"&gt;https://community.sap.com/resources/questions-and-answers&lt;/A&gt; as this
     resource page provides tips for preparing questions that draw responses
     from our members&lt;/LI&gt;
 &lt;LI&gt;Consider to take
     our Q&amp;amp;A tutorial at: &lt;A href="https://developers.sap.com/tutorials/community-qa.html" target="_blank"&gt;https://developers.sap.com/tutorials/community-qa.html&lt;/A&gt;. as that will
     help you when submitting questions to the community.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I also recommend that you include a profile picture. By
personalizing your profile, you encourage readers to respond: &lt;A href="https://developers.sap.com/tutorials/community-profile.html" target="_blank"&gt;https://developers.sap.com/tutorials/community-profile.html&lt;/A&gt;.&lt;/P&gt;

&lt;P&gt;I hope you find this advice useful, and we're happy to have you
as part of SAP Community!&lt;/P&gt;

&lt;P&gt;All the best,&lt;BR /&gt;
-Alex&lt;/P&gt;</description>
    <pubDate>Thu, 28 Apr 2022 20:36:04 GMT</pubDate>
    <dc:creator>AlexGourdet</dc:creator>
    <dc:date>2022-04-28T20:36:04Z</dc:date>
    <item>
      <title>Supplier Liabilities SQL Query with currency calculation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/supplier-liabilities-sql-query-with-currency-calculation/m-p/12553772#M2007036</link>
      <description>&lt;P&gt;I have a quick question, I have developed a SQL report for AP, however I we have 24 businesses which all have different currencies, it is east to report in the BP currency but many times we need to report in a different currency. Has anyone else had this issue before and if so could you point me in a quick direction. &lt;/P&gt;
  &lt;P&gt;Here is my code: I need to link this to a parameter to recalculate. Two quires here are running, but the second query will only run over one database not all like the first one. &lt;/P&gt;
  &lt;P&gt;Any idea's &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;
  &lt;P&gt;IF OBJECT_ID(N'tempdb.dbo.#FX') IS NOT NULL&lt;/P&gt;
  &lt;P&gt; DROP TABLE #FX&lt;/P&gt;
  &lt;P&gt;IF OBJECT_ID(N'tempdb.dbo.#AP') IS NOT NULL&lt;/P&gt;
  &lt;P&gt; DROP TABLE #AP&lt;/P&gt;
  &lt;P&gt;DECLARE @DATABASENAME VARCHAR(25)&lt;/P&gt;
  &lt;P&gt;DECLARE @intcount INT&lt;/P&gt;
  &lt;P&gt;SET @intcount = 1&lt;/P&gt;
  &lt;P&gt;DECLARE @DATE AS DATE = GETDATE()&lt;/P&gt;
  &lt;P&gt;DECLARE @COMPANY AS VARCHAR(50) = 'KSS_LTD'&lt;/P&gt;
  &lt;P&gt;CREATE TABLE #FX (&lt;/P&gt;
  &lt;P&gt; Current_Database VARCHAR(50)&lt;/P&gt;
  &lt;P&gt; ,RateDate DATE&lt;/P&gt;
  &lt;P&gt; ,Currency VARCHAR(3)&lt;/P&gt;
  &lt;P&gt; ,Rate NUMERIC(19, 6)&lt;/P&gt;
  &lt;P&gt; )&lt;/P&gt;
  &lt;P&gt;CREATE CLUSTERED INDEX ix_tempCIcOMPANY ON #FX (Current_Database)&lt;/P&gt;
  &lt;P&gt;WHILE (@intcount &amp;lt;= 24)&lt;/P&gt;
  &lt;P&gt;BEGIN&lt;/P&gt;
  &lt;P&gt; IF @intcount = 1&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_INC'&lt;/P&gt;
  &lt;P&gt; USE [KSS_INC]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 2&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_LTD'&lt;/P&gt;
  &lt;P&gt; USE [KSS_LTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 3&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_US'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_US]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 4&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KENTGRPLTD'&lt;/P&gt;
  &lt;P&gt; USE [KENTGRPLTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 5&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_INDIA'&lt;/P&gt;
  &lt;P&gt; USE [KSS_INDIA]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 6&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_Canada'&lt;/P&gt;
  &lt;P&gt; USE [KSS_Canada]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 7&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_AUS'&lt;/P&gt;
  &lt;P&gt; USE [KSS_AUS]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 8&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPS_INDIA'&lt;/P&gt;
  &lt;P&gt; USE [MPS_INDIA]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 9&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_SAF'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_SAF]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 10&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_CAN'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_CAN]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 11&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_US'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_US]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 12&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_JAP'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_JAP]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 13&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_UK'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_UK]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 14&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_CHI'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_CHI]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 15&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KAL_LTD'&lt;/P&gt;
  &lt;P&gt; USE [KAL_LTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 16&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'TRADE_AREA_SYSTEMS'&lt;/P&gt;
  &lt;P&gt; USE [TRADE_AREA_SYSTEMS]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 17&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'INTALYTICS'&lt;/P&gt;
  &lt;P&gt; USE [INTALYTICS]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 18&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSSL_LTD'&lt;/P&gt;
  &lt;P&gt; USE [KSSL_LTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 19&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI'&lt;/P&gt;
  &lt;P&gt; USE [MPSI]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 20&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_INT'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_INT]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 21&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_KOR'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_KOR]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 22&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'NEW_SIS_SA'&lt;/P&gt;
  &lt;P&gt; USE [NEW_SIS_SA]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 23&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSICHI_INC'&lt;/P&gt;
  &lt;P&gt; USE [MPSICHI_INC]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount &amp;gt;= 24 -- to stop loop after last database&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; BREAK&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; INSERT INTO #FX&lt;/P&gt;
  &lt;P&gt; SELECT DB_Name() AS [Database]&lt;/P&gt;
  &lt;P&gt; ,t0.RateDate&lt;/P&gt;
  &lt;P&gt; ,T0.Currency&lt;/P&gt;
  &lt;P&gt; ,T0.Rate&lt;/P&gt;
  &lt;P&gt; FROM ORTT AS t0&lt;/P&gt;
  &lt;P&gt; LEFT JOIN ocrn AS t1 ON t0.Currency = t1.CurrCode&lt;/P&gt;
  &lt;P&gt; WHERE RateDate = @Date&lt;/P&gt;
  &lt;P&gt; ----and DB_NAME() = @company&lt;/P&gt;
  &lt;P&gt; UNION ALL&lt;/P&gt;
  &lt;P&gt; SELECT TOP 1 DB_Name() AS [Database]&lt;/P&gt;
  &lt;P&gt; ,t0.RateDate&lt;/P&gt;
  &lt;P&gt; ,Currency = CASE &lt;/P&gt;
  &lt;P&gt; WHEN db_name() = 'KSS_LTD'&lt;/P&gt;
  &lt;P&gt; THEN 'GBP'&lt;/P&gt;
  &lt;P&gt; WHEN db_name() = 'KSSGRP_CON'&lt;/P&gt;
  &lt;P&gt; THEN 'CAD'&lt;/P&gt;
  &lt;P&gt; WHEN DB_NAME() = 'KSS_INC'&lt;/P&gt;
  &lt;P&gt; THEN 'USD'&lt;/P&gt;
  &lt;P&gt; WHEN DB_Name() = 'MPSI_US'&lt;/P&gt;
  &lt;P&gt; THEN 'USD'&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ,Rate = 1&lt;/P&gt;
  &lt;P&gt; FROM ORTT AS t0 ---- forighn rates&lt;/P&gt;
  &lt;P&gt; LEFT JOIN ocrn AS t1 ON t0.Currency = t1.CurrCode&lt;/P&gt;
  &lt;P&gt; WHERE RateDate = @Date&lt;/P&gt;
  &lt;P&gt; ----and DB_NAME() = @company&lt;/P&gt;
  &lt;P&gt; SET @intcount = @intcount + 1&lt;/P&gt;
  &lt;P&gt;END&lt;/P&gt;
  &lt;P&gt;CREATE TABLE #AP (&lt;/P&gt;
  &lt;P&gt; Current_Database VARCHAR(50)&lt;/P&gt;
  &lt;P&gt; ,Customer_Number VARCHAR(50)&lt;/P&gt;
  &lt;P&gt; ,Customer_Name VARCHAR(150)&lt;/P&gt;
  &lt;P&gt; ,Sales_Employee_Name_BP VARCHAR(50)&lt;/P&gt;
  &lt;P&gt; ,TransType NUMERIC(18, 0)&lt;/P&gt;
  &lt;P&gt; ,[Type] VARCHAR(50) --&lt;/P&gt;
  &lt;P&gt; ,Document_Number VARCHAR(50)&lt;/P&gt;
  &lt;P&gt; ,Posting_Date DATE --&lt;/P&gt;
  &lt;P&gt; ,Due_Date DATE --&lt;/P&gt;
  &lt;P&gt; ,BP_Reference VARCHAR(150)&lt;/P&gt;
  &lt;P&gt; ,Balance_Due_Currency VARCHAR(5)&lt;/P&gt;
  &lt;P&gt; ,Payment_Terms_BP VARCHAR(50)&lt;/P&gt;
  &lt;P&gt; ----, DaysDiff numeric(18,0)&lt;/P&gt;
  &lt;P&gt; ,Balance NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; ,Future NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; ,[Current] NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; ,[30_60_Days] NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; ,[61_90_Days] NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; ,[91-120_Days] NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; ,[121+_Days] NUMERIC(18, 2)&lt;/P&gt;
  &lt;P&gt; )&lt;/P&gt;
  &lt;P&gt;CREATE CLUSTERED INDEX ix_tempCIcOMPANY ON #ap (customer_number)&lt;/P&gt;
  &lt;P&gt;use [kss_ltd]&lt;/P&gt;
  &lt;P&gt;WHILE (@intcount &amp;lt;= 25)&lt;/P&gt;
  &lt;P&gt;BEGIN&lt;/P&gt;
  &lt;P&gt; IF @intcount = 1&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_INC'&lt;/P&gt;
  &lt;P&gt; USE [KSS_INC]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 2&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_LTD'&lt;/P&gt;
  &lt;P&gt; USE [KSS_LTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 3&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_US'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_US]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 4&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KENTGRPLTD'&lt;/P&gt;
  &lt;P&gt; USE [KENTGRPLTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 5&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_INDIA'&lt;/P&gt;
  &lt;P&gt; USE [KSS_INDIA]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 6&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_Canada'&lt;/P&gt;
  &lt;P&gt; USE [KSS_Canada]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 7&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSS_AUS'&lt;/P&gt;
  &lt;P&gt; USE [KSS_AUS]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 8&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPS_INDIA'&lt;/P&gt;
  &lt;P&gt; USE [MPS_INDIA]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 9&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_SAF'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_SAF]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 10&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_CAN'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_CAN]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 11&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_US'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_US]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 12&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_JAP'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_JAP]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 13&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_UK'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_UK]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 14&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_CHI'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_CHI]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 15&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KAL_LTD'&lt;/P&gt;
  &lt;P&gt; USE [KAL_LTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 16&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'TRADE_AREA_SYSTEMS'&lt;/P&gt;
  &lt;P&gt; USE [TRADE_AREA_SYSTEMS]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 17&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'INTALYTICS'&lt;/P&gt;
  &lt;P&gt; USE [INTALYTICS]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 18&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'KSSL_LTD'&lt;/P&gt;
  &lt;P&gt; USE [KSSL_LTD]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 19&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI'&lt;/P&gt;
  &lt;P&gt; USE [MPSI]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 20&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_INT'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_INT]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 21&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSI_KOR'&lt;/P&gt;
  &lt;P&gt; USE [MPSI_KOR]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 22&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'NEW_SIS_SA'&lt;/P&gt;
  &lt;P&gt; USE [NEW_SIS_SA]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 23&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'MPSICHI_INC'&lt;/P&gt;
  &lt;P&gt; USE [MPSICHI_INC]&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount = 24&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; SET @DATABASENAME = 'ZTEST_ESITE_ANALYTICS'&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; IF @intcount &amp;gt;= 25 -- to stop loop after last database&lt;/P&gt;
  &lt;P&gt; BEGIN&lt;/P&gt;
  &lt;P&gt; BREAK&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; INSERT INTO #AP&lt;/P&gt;
  &lt;P&gt; SELECT DB_Name() AS [Database]&lt;/P&gt;
  &lt;P&gt; ,T1."CardCode" AS customer_number&lt;/P&gt;
  &lt;P&gt; ,T1."CardName" AS Customer_Name&lt;/P&gt;
  &lt;P&gt; ,t7.SlpName AS Sales_Employee_Name_BP&lt;/P&gt;
  &lt;P&gt; ,t0.TransType&lt;/P&gt;
  &lt;P&gt; ,CASE &lt;/P&gt;
  &lt;P&gt; WHEN T0.TransType = 18&lt;/P&gt;
  &lt;P&gt; THEN 'A/P Invoice'&lt;/P&gt;
  &lt;P&gt; WHEN T0.TransType = '46'&lt;/P&gt;
  &lt;P&gt; THEN 'Outgoing_Payments'&lt;/P&gt;
  &lt;P&gt; WHEN t0.TransType = 30&lt;/P&gt;
  &lt;P&gt; THEN 'Journal Entry'&lt;/P&gt;
  &lt;P&gt; WHEN t0.TransType = 24&lt;/P&gt;
  &lt;P&gt; THEN 'Incoming Payment'&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ,T0.Ref1&lt;/P&gt;
  &lt;P&gt; ,T0.RefDate AS Posting_Date&lt;/P&gt;
  &lt;P&gt; ,T0.DueDate AS Due_Date&lt;/P&gt;
  &lt;P&gt; ,t0.Ref2&lt;/P&gt;
  &lt;P&gt; ,T1.Currency AS Balance_Due_Currency&lt;/P&gt;
  &lt;P&gt; ,T6.PymntGroup&lt;/P&gt;
  &lt;P&gt; --&lt;/P&gt;
  &lt;P&gt; --&lt;/P&gt;
  &lt;P&gt; ,(T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)) 'Balance'&lt;/P&gt;
  &lt;P&gt; ,(&lt;/P&gt;
  &lt;P&gt; CASE &lt;/P&gt;
  &lt;P&gt; WHEN datediff(D, T0."DueDate", @Date) &amp;lt;= 0&lt;/P&gt;
  &lt;P&gt; THEN T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)&lt;/P&gt;
  &lt;P&gt; ELSE 0&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ) 'Future'&lt;/P&gt;
  &lt;P&gt; ,(&lt;/P&gt;
  &lt;P&gt; CASE &lt;/P&gt;
  &lt;P&gt; WHEN datediff(D, T0."DueDate", @Date) &amp;gt; 0&lt;/P&gt;
  &lt;P&gt; AND datediff(D, T0."DueDate", @Date) &amp;lt;= 30&lt;/P&gt;
  &lt;P&gt; THEN T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)&lt;/P&gt;
  &lt;P&gt; ELSE 0&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ) 'Current'&lt;/P&gt;
  &lt;P&gt; ,(&lt;/P&gt;
  &lt;P&gt; CASE &lt;/P&gt;
  &lt;P&gt; WHEN datediff(D, T0."DueDate", @Date) &amp;gt; 30&lt;/P&gt;
  &lt;P&gt; AND datediff(D, T0."DueDate", @Date) &amp;lt;= 60&lt;/P&gt;
  &lt;P&gt; THEN T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)&lt;/P&gt;
  &lt;P&gt; ELSE 0&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ) '31-60 Days'&lt;/P&gt;
  &lt;P&gt; ,(&lt;/P&gt;
  &lt;P&gt; CASE &lt;/P&gt;
  &lt;P&gt; WHEN datediff(D, T0."DueDate", @Date) &amp;gt; 60&lt;/P&gt;
  &lt;P&gt; AND datediff(D, T0."DueDate", @Date) &amp;lt;= 90&lt;/P&gt;
  &lt;P&gt; THEN T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)&lt;/P&gt;
  &lt;P&gt; ELSE 0&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ) '61-90 Days'&lt;/P&gt;
  &lt;P&gt; ,(&lt;/P&gt;
  &lt;P&gt; CASE &lt;/P&gt;
  &lt;P&gt; WHEN datediff(D, T0."DueDate", @Date) &amp;gt; 90&lt;/P&gt;
  &lt;P&gt; AND datediff(D, T0."DueDate", @Date) &amp;lt;= 120&lt;/P&gt;
  &lt;P&gt; THEN T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)&lt;/P&gt;
  &lt;P&gt; ELSE 0&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ) '91-120 Days'&lt;/P&gt;
  &lt;P&gt; ,(&lt;/P&gt;
  &lt;P&gt; CASE &lt;/P&gt;
  &lt;P&gt; WHEN datediff(D, T0."DueDate", @Date) &amp;gt; 120&lt;/P&gt;
  &lt;P&gt; THEN T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)&lt;/P&gt;
  &lt;P&gt; ELSE 0&lt;/P&gt;
  &lt;P&gt; END&lt;/P&gt;
  &lt;P&gt; ) '121+ Days'&lt;/P&gt;
  &lt;P&gt; FROM JDT1 T0&lt;/P&gt;
  &lt;P&gt; INNER JOIN OCRD T1 ON T0."ShortName" = T1."CardCode"&lt;/P&gt;
  &lt;P&gt; INNER JOIN OJDT T2 ON T0."TransId" = T2."TransId"&lt;/P&gt;
  &lt;P&gt; LEFT JOIN (&lt;/P&gt;
  &lt;P&gt; SELECT T4."ShortName"&lt;/P&gt;
  &lt;P&gt; ,T4."TransId"&lt;/P&gt;
  &lt;P&gt; ,SUM(T4."ReconSum" * CASE &lt;/P&gt;
  &lt;P&gt; WHEN T4."IsCredit" = 'D'&lt;/P&gt;
  &lt;P&gt; THEN 1&lt;/P&gt;
  &lt;P&gt; ELSE - 1&lt;/P&gt;
  &lt;P&gt; END) AS "ReconSum"&lt;/P&gt;
  &lt;P&gt; FROM OITR T3&lt;/P&gt;
  &lt;P&gt; INNER JOIN ITR1 T4 ON T3."ReconNum" = T4."ReconNum"&lt;/P&gt;
  &lt;P&gt; WHERE T3."ReconDate" &amp;lt;= @Date&lt;/P&gt;
  &lt;P&gt; GROUP BY T4."ShortName"&lt;/P&gt;
  &lt;P&gt; ,T4."TransId"&lt;/P&gt;
  &lt;P&gt; ) T5 ON T0."TransId" = T5."TransId"&lt;/P&gt;
  &lt;P&gt; AND T0."ShortName" = T5."ShortName"&lt;/P&gt;
  &lt;P&gt; LEFT JOIN octg AS t6 ON t6.GroupNum = t1.GroupNum /*sales BP number*/&lt;/P&gt;
  &lt;P&gt; LEFT JOIN OSLP AS t7 ON t7.SlpCode = t1.SlpCode&lt;/P&gt;
  &lt;P&gt; WHERE T0."RefDate" &amp;lt;= @Date&lt;/P&gt;
  &lt;P&gt; AND T1."CardType" = 'S'&lt;/P&gt;
  &lt;P&gt; AND (T0."Debit" - T0."Credit" - COALESCE(T5."ReconSum", 0)) &amp;lt;&amp;gt; 0&lt;/P&gt;
  &lt;P&gt; AND Balance &amp;lt;&amp;gt; 0 /*to take filter out all other transactions that have been at zero at time of date*/&lt;/P&gt;
  &lt;P&gt; ORDER BY T1."CardCode"&lt;/P&gt;
  &lt;P&gt; ,T0."DueDate"&lt;/P&gt;
  &lt;P&gt; ,T0."Ref1"&lt;/P&gt;
  &lt;P&gt; SET @intcount = @intcount + 1&lt;/P&gt;
  &lt;P&gt;END&lt;/P&gt;
  &lt;P&gt;SELECT DISTINCT *&lt;/P&gt;
  &lt;P&gt;FROM #AP&lt;/P&gt;
  &lt;P&gt;--WHERE Current_Database IN (@Company)&lt;/P&gt;
  &lt;P&gt;SELECT *&lt;/P&gt;
  &lt;P&gt;FROM #FX&lt;/P&gt;</description>
      <pubDate>Thu, 28 Apr 2022 20:33:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/supplier-liabilities-sql-query-with-currency-calculation/m-p/12553772#M2007036</guid>
      <dc:creator>former_member983685</dc:creator>
      <dc:date>2022-04-28T20:33:53Z</dc:date>
    </item>
    <item>
      <title>Re: Supplier Liabilities SQL Query with currency calculation</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/supplier-liabilities-sql-query-with-currency-calculation/m-p/12553773#M2007037</link>
      <description>&lt;P&gt;Thank
you for visiting SAP Community to get answers to your questions.&lt;/P&gt;

&lt;P&gt;Since you're asking a question here for the first time, I'd like
to recommend you with the following steps so you can get the most out of your
community membership:&lt;/P&gt;

&lt;UL&gt;
 &lt;LI&gt;Please
     see: &lt;A href="https://community.sap.com/resources/questions-and-answers"&gt;https://community.sap.com/resources/questions-and-answers&lt;/A&gt; as this
     resource page provides tips for preparing questions that draw responses
     from our members&lt;/LI&gt;
 &lt;LI&gt;Consider to take
     our Q&amp;amp;A tutorial at: &lt;A href="https://developers.sap.com/tutorials/community-qa.html" target="_blank"&gt;https://developers.sap.com/tutorials/community-qa.html&lt;/A&gt;. as that will
     help you when submitting questions to the community.&lt;/LI&gt;
&lt;/UL&gt;

&lt;P&gt;I also recommend that you include a profile picture. By
personalizing your profile, you encourage readers to respond: &lt;A href="https://developers.sap.com/tutorials/community-profile.html" target="_blank"&gt;https://developers.sap.com/tutorials/community-profile.html&lt;/A&gt;.&lt;/P&gt;

&lt;P&gt;I hope you find this advice useful, and we're happy to have you
as part of SAP Community!&lt;/P&gt;

&lt;P&gt;All the best,&lt;BR /&gt;
-Alex&lt;/P&gt;</description>
      <pubDate>Thu, 28 Apr 2022 20:36:04 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/supplier-liabilities-sql-query-with-currency-calculation/m-p/12553773#M2007037</guid>
      <dc:creator>AlexGourdet</dc:creator>
      <dc:date>2022-04-28T20:36:04Z</dc:date>
    </item>
  </channel>
</rss>

