gulliversfind.com gulliversfind.com gulliversfind.com
Site Home :> About Us :> Add Url :> Security & Privacy :> Terms & Conditions :> Add Article
Search:   
Add Url
 
 

Employment & Careers

 

Children & Teens

 

Software & Networking

 

Research & Science

 

Academics & Learning

 

Self Enhancement

 

Realty & Property

 

Business & Commerce

 

Issues & News

 

Culture & Art

 

Indoor Games

 

Automobile & Automotive

 

Lifestyle & Fashion

 

Travel & Accommodation

 

Policies & Law

 

Music & Entertainment

 

Shopping Online

 

Healthcare & Treatment

 

Health & Therapy

 

People & Society

 

Sports & Adventure

 

Home Family & Garden

 

Food & Recipe

 

Banking & Finance


 

Site Home › Software & Networking › Computer Software
 

Microsoft Great Plains: Interest Calculation Example - Stored Procedure for Crystal Report

 
Author: Andrew Karasev

This is intermediate level SQL scripting article for DB Administrator, Programmer, IT Specialist

Our and Microsoft Business Solutions goal here is to educate database administrator, programmer, software developer to enable them support Microsoft Great Plains for their companies. In our opinion self support is the goal of Microsoft to facilitate implementation of its products: Great Plains, Navision, Solomon, Microsoft CRM. You can do it for your company, appealing to Microsoft Business Solutions Techknowledge database. This will allow you to avoid expensive consultant visits onsite. You only need the help from professional when you plan on complex customization, interface or integration, then you can appeal to somebody who specializes in these tasks and can do inexpensive nation-wide remote support for you.

Let's look at interest calculation techniques.

Imagine that you are financing institution and have multiple customers in two companies, where you need to predict interest. The following procedure will do the job:

CREATE PROCEDURE AST_Interest_Calculation

@Company1 varchar(10),--Great Plains SQL database ID

@Company2 varchar(10),

@Accountfrom varchar(60),

@Accountto varchar(60),

@Datefrom datetime,

@Dateto datetime--,

as

declare @char39 char --for single quote mark

declare @SDatefrom as varchar(50)

declare @SDateto as varchar(50)

select @SDatefrom = cast(@Datefrom as varchar(50))

select @SDateto = cast(@Dateto as varchar(50))

select @char39=char(39)

if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[AST_INTEREST_TABLE]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

CREATE TABLE [dbo].[AST_INTEREST_TABLE] (

[YEAR] [int] NULL ,

[MONTH] [int] NULL ,

[COMPANYID] [varchar] (4) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,

[ACTNUMST] [char] (129) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,

[BEGINDATE] [varchar] (19) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,

[ENDDATE] [varchar] (19) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,

[YEARDEGBALANCE] [numeric](19, 5) NULL ,

[BEGBALANCE] [numeric](38, 5) NULL ,

[ENDBALANCE] [numeric](38, 5) NULL ,

[INTERESTONBALANCE] [numeric](38, 6) NULL ,

[INTERESONTRANSACTIONS] [numeric](38, 8) NULL ,

[INTEREST] [numeric](38, 6) NULL ) ON [PRIMARY]

exec("

delete AST_INTEREST_TABLE where [YEAR] = year("+ @char39 + @Datefrom + @char39 +") and [MONTH]=month("+ @char39 + @Datefrom + @char39 +")

insert into AST_INTEREST_TABLE

select

year(X.BEGINDATE) as [YEAR],

month(X.BEGINDATE) as [MONTH],

X.COMPANYID,

X.ACTNUMST,

X.BEGINDATE as BEGINDATE,

X.ENDDATE as ENDDATE,

X.YEARBEGBALANCE as YEARDEGBALANCE,

X.YEARBEGBALANCE+X.BEGBALANCE as BEGBALANCE,

X.YEARBEGBALANCE+X.ENDBALANCE as ENDBALANCE,

X.INTERESTONBALANCE as INTERESTONBALANCE,

X.INTERESTONTRANSACTIONS as INTERESONTRANSACTIONS,

X.INTERESTONBALANCE+X.INTERESTONTRANSACTIONS as INTEREST

--into AST_INTEREST_TABLE

from

(

select

"+ @char39+ @Company1 + @char39+" as COMPANYID,

a.ACTNUMST,

"+ @char39 + @Datefrom + @char39 +" as BEGINDATE,

"+ @char39 + @Dateto + @char39 +" as ENDDATE,

case when

b.PERDBLNC is null then 0

elseb.PERDBLNC

end as YEARBEGBALANCE,

sum

(

case

when (c.DEBITAMT-c.CRDTAMNT is not null and c.TRXDATE ="+ @char39 + @SDatefrom + @char39 +" and c.TRXDATE =year("+ @char39 + @Datefrom + @char39 +")

where

a.ACTNUMST>="+@char39+@Accountfrom+@char39 +"

and a.ACTNUMST="+ @char39 + @SDatefrom + @char39 +" and c.TRXDATE =year("+ @char39 + @Datefrom + @char39 +")

where

a.ACTNUMST>="+@char39+@Accountfrom+@char39 +"

and a.ACTNUMST<="+@char39+@Accountto+@char39 +"

group by

a.ACTNUMST,

case when

b.PERDBLNC is null then 0

elseb.PERDBLNC

end,

d.USERDEF1

) X

")

Happy querying and customizing! if you want us to help you - give us a call 1-866-528-0577! help@albaspectrum.com

Author Bio:
Andrew Karasev is a notable scripter. Andrew likes to pen down articles about this field.
You can search for this article using: free software, free software downloads, cheap computer software, discount software
 
 
 

Related Articles

 
How My Page Rank Went From 0 to 5 In One Update - How Your's Can Too
 
Mortgage Calcutator Software
 
Your Key to High Search Engine Placement: Links
 
Critical Elements Of An Ecommerce Website
 
4 Ways to Make Money from People Who Are LEAVING Your Site!
 
The Value of Search Engine Marketing
 
Financial Predators: Vermin, Rodents and Other Insect Pests
 
Microsoft Great Plains on Ctree or Pervasive SQL - What to Do - Tips for IT Manager
 
Online Surveys Are Tempting
 
Loyal customers on its way to extinction
 
 
 
Site Home :> Security & Privacy :> Terms & Conditions  
Copyright © 2008 www.gulliversfind.com