i want to develop small inventory software,
but i am little bit confuse how to add more than one product
to inventory table
there are two table:
1) table_inventory
2) table_products
for Exampl. Mr. Smith is my customer and wants invoice for
some products. (Pen, Pencil, Books),
how to do it...
Please help

Sudhakar ChaudharyPosted Jul 14, 2012, 12:07 PM
Hey vilas .
Here some solution for your problem hope that can help you.
Table 1: for product details (PMS)
GO
/****** Object: Table [dbo].[PMS] Script Date: 07/14/2012 08:59:59 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[PMS](
[P_NAME] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[P_PACKING] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_MFD] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_ORMFD] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_UNIT] [int] NULL,
[F_STRATE] [decimal](15, 4) NOT NULL,
[F_TRADE] [decimal](15, 4) NOT NULL,
[F_MRP] [decimal](15, 4) NOT NULL,
[F_VAT] [decimal](5, 2) NOT NULL,
[F_COMODITYCODE] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_SAT] [decimal](5, 2) NOT NULL,
[P_CODE] [int] IDENTITY(10000,1) NOT NULL,
[P_OLDCODE] [varchar](6) COLLATE SQL_Latin1_General_CP1_CI_AS NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
Table 2: Purchase Record(PPT)
USE [MAIN2011]
GO
/****** Object: Table [dbo].[PPT] Script Date: 07/14/2012 09:01:19 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[PPT](
[F_RECNO] [int] IDENTITY(1,1) NOT NULL,
[PUR_QNT] [decimal](12, 2) NULL,
[S_NO] [int] NOT NULL,
[INVOICE_NO] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[P_CODE] [int] NULL,
[P_NAME] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[P_PACKING] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[BAT_NO] [varchar](16) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[P_QNT] [decimal](14, 2) NULL,
[F_QNT] [decimal](15, 2) NULL,
[AMOUNT] [decimal](15, 2) NULL,
[F_PCODE] [int] NULL,
[F_DATE] [datetime] NULL,
[F_RECDT] [datetime] NULL,
[F_CHALAN] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_EXPDT] [varchar](6) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_MRP] [decimal](15, 2) NULL,
[F_TRADE] [decimal](15, 4) NULL,
[F_EXDPER] [decimal](6, 2) NULL,
[F_STRATE] [decimal](15, 4) NULL,
[F_STTYPE] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_SDEAL] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_PDEAL] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_CSTRATE] [decimal](15, 4) NULL,
[F_CTRADE] [decimal](15, 4) NULL,
[F_HANDCH] [decimal](5, 2) NULL,
[F_DISC_BEF] [decimal](5, 2) NULL,
[F_DISC_AFT] [decimal](5, 2) NULL,
[F_DUEDT] [datetime] NULL,
[F_RECSTO] [int] NULL,
[F_WHATREP] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_SHAND] [decimal](5, 2) NULL,
[F_RHAND] [decimal](5, 2) NULL,
[F_BOX] [int] NULL,
[F_CACR] [char](2) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_NORMAL] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_BILLWHAT] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_RACKNO] [varchar](8) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_MINSTOCK] [int] NULL,
[F_ORMFD] [varchar](16) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_MFD] [varchar](16) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_LTEXTRA] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_EXUP] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_REMARK] [varchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_VATPER] [decimal](5, 2) NULL,
[F_SVATPER] [decimal](5, 2) NULL,
[F_VATAMT] [decimal](15, 2) NULL,
[F_AMTINVAT] [decimal](15, 2) NULL,
[F_AMT1VAT] [decimal](15, 2) NULL,
[F_BOXRT] [decimal](15, 2) NULL,
[F_CASERT] [decimal](15, 2) NULL,
[F_ADTPER] [decimal](5, 2) NULL,
[F_ADTAMT] [decimal](15, 2) NULL,
[F_CASE] [int] NULL,
[P_OLDCODE] [varchar](6) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_QNT13] [decimal](14, 2) NOT NULL,
[F_BQNT13] [decimal](14, 2) NOT NULL,
[F_GQNT1] [decimal](14, 2) NULL,
[F_GQNT2] [decimal](14, 2) NULL,
[F_GQNT3] [decimal](14, 2) NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
Table 3: Sale Record(SPT)
USE [MAIN2011]
GO
/****** Object: Table [dbo].[SPT] Script Date: 07/14/2012 09:01:54 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[SPT](
[F_RECNO] [int] IDENTITY(1,1) NOT NULL,
[F_DATE] [datetime] NULL,
[BILL_NO] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[P_CODE] [int] NULL,
[BAT_NO] [varchar](16) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[S_QNT] [decimal](14, 3) NULL,
[F_QNT] [varchar](15) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[AMOUNT] [decimal](15, 3) NULL,
[F_DISC] [decimal](5, 2) NULL,
[F_DISC2] [decimal](5, 2) NULL,
[F_DISC3] [decimal](5, 2) NULL,
[F_RATE] [decimal](15, 4) NULL,
[F_MRP] [decimal](15, 4) NULL,
[F_SERIAL] [int] NULL,
[F_STTYPE] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_PCODE] [int] NULL,
[CASH_CRDT] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_EXPDT] [char](5) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_CANCEL] [varchar](5) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_RECSTO] [int] NULL,
[F_WHATTODO] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_NETP] [decimal](15, 4) NULL,
[F_BILLTYPE] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_REMA] [char](1) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_DOCT] [varchar](30) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_BOX] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[F_VATPER] [decimal](5, 2) NULL,
[F_VATAMT1] [decimal](15, 4) NULL,
[F_VATAMT] [decimal](15, 4) NULL,
[F_PTR] [decimal](15, 4) NULL,
[F_ACD] [int] NULL,
[F_RCD] [int] NULL,
[F_CSTPER] [decimal](5, 2) NULL,
[F_CSTAMT] [decimal](15, 4) NULL,
[S_QNT1] [decimal](14, 3) NULL,
[F_ADTPER] [decimal](5, 4) NULL,
[F_ADTAMT] [decimal](15, 2) NULL
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
In table PPT :
(PUR_QNT) is purcase quantity of a Product .
when we sale any product then field (F_QNT13))it will increase.
And return prduct alos increase (F_BQNT13) if you want know stock than simply by airthmetic operation find the stock.