Tables
Tables
----------------------------
Table Name--Client_Master
Column Name Data type
Client_No Varchar2(6)(PK)
Name Varchar2(20)
Address1 Varchar2(30)
Address2 Varchar2(30)
City varchar2(15)
State varchar2(15)
Pincode Number(6)
Bal_Due Number(10,2)
>create table Client_Master
(Client_No Varchar2(6) constraint pk_cno primary key,
Name Varchar2(20) constraint nn_cname not null,
Address1 Varchar2(30),
Address2 Varchar2(30),
City varchar2(15),
State varchar2(15),
Pincode Number(6),
Bal_Due Number(10,2))
/
---------------------------------------------------------------------------
----------------------------
CREATE TABLE product_master
(product_no varchar2(6) constraint
pk_product_pk primary key,
Description varchar2(25),
unit_measure varchar2(10),
Qty_on_hand number(8),
reorder_lvl number(8),
cost_price number(10,2),
selling_price number(8,2))
---------------------------------------------------------------------------
----------------------------
Table Name: Sales_order(Master)
(Use to store order header information)
Column Name Data Type
S_order_no Varchar2(6)
Order_date Date
Client_no Varchar2(6)(FK)
Order_status Char(2)
> create table Sales_order
(S_order_no Varchar2(6) constraint pk_sno primary key,
Order_date Date default sysdate,
Client_no varchar2(6) constraint fk_cno references
client_master(client_no),
Order_status char(2))
/
---------------------------------------------------------------------------
------------------
Table Name :Sales_Order_Details
(Use to store information about order detailes)
Column-name Data Type
S_order_no Varchar2(6)(FK)
Product_no Varchar2(6)(FK)
Product_rate Number(8,2)
Qty_ordered Number(8)
s_Order_no,product_no have one Composite_PK
---------------
> create table Sales_Order_Details
(S_order_no Varchar2(6)
constraint fk_sono references sales_order(s_order_no),
Product_no Varchar2(6)
constraint fk_pno references product_master
(product_no),
Product_rate Number(8,2),
Qty_ordered Number(8),
constraint cpk_sp_no primary key(s_order_no,product_no))
/
-------------------------------------------------------------------------
Tablename--Challan_Header(Master)
Column-Name
------------------------
Challan_no Varchar2(6) Pk
Challan_date Date--Challan_date cannot be greater than system date.
S_order_no varchar2(6) (fk)
Billed_YN char (Is the challan Billed?)
Column_name Datatype
S_Order_no Varchar2(6)(fk)
Terms_Conditions Varchar2(1000) (Terms and Conditions specified for
the order).
---------------------------
Prog1:
DECLARE
sono_fk_vio EXCEPTION;
pno_fk_vio exception;
PRAGMA EXCEPTION_INIT(sono_fk_vio,-02291);
PRAGMA EXCEPTION_INIT(pno_fk_vio,-02291);
BEGIN
insert into Sales_Order_Details
values('O105','P101',50,30);
EXCEPTION
when sono_fk_vio or pno_fk_vio then
display('Sales order no or product no is not exists');
END;
DECLARE
i product_master%rowtype;
BEGIN
i.product_no:='&prd_no';
SELECT Qty_on_hand,reorder_lvl INTO
i.qty_on_hand,i.reorder_lvl
FROM product_master
WHERE product_no=i.product_no;
IF i.Qty_on_hand<i.reorder_lvl THEN
GOTO updation;
ELSE
GOTO noupdation;
END IF;
<<updation>>
UPDATE product_master
SET qty_on_hand=i.Qty_on_hand+i.reorder_lvl
WHERE product_no=i.product_no;
RETURN;
<<noupdation>>
display('There are enogh items');
RETURN;
END;