sohrabi.1384
جمعه 14 آذر 1393, 23:15 عصر
:لبخندساده: دوستان :لبخندساده: برنامه نویس :لبخندساده: سلام :لبخندساده:
میخواستم در چند جدول درج کنم با این روش زیر ، با خطا مواحه نمیشم ولی نمیدونم مشکل کار در چیست عملیات با موفقیت انجام نمیشود
در کلاسی این کد را قرار دادم تا بعدا شی از این کلاس درست کنم تا به ابن متد INPUT دست رسی پیدا کنم
public bool InputProductMethod(int InvoiceID, int CustomerID, int ProductID, int SupplyNumber,int SupplyPrice/*, int PaymentID, int PaymentPrice, string PaymentIntroduce*/)
{
SqlConnection CN = new SqlConnection(DBWrapper.ConnectionString);
try
{
SqlCommand CMD = new SqlCommand();
CMD.CommandText = "input";
CMD.CommandType = CommandType.StoredProcedure;
////
CMD.Parameters.AddWithValue("@InvoiceID", InvoiceID);
CMD.Parameters.AddWithValue("@CustomerID", CustomerID);
CMD.Parameters.AddWithValue("@ProductID", ProductID);
CMD.Parameters.AddWithValue("@SupplyNumber", SupplyNumber);
CMD.Parameters.AddWithValue("@SupplyPrice", SupplyPrice);
//CMD.Parameters.AddWithValue("@PaymentPrice", PaymentPrice);
//CMD.Parameters.AddWithValue("@PaymentIntroduce", PaymentIntroduce);
//CMD.Parameters.AddWithValue("@KALA_ID", PaymentID);
//
CMD.Connection = CN;//Connetion Vasl hastim ro bayad Assing konim
CN.Open();
// CMD.ExecuteNonQuery();
SqlDataReader Dr = CMD.ExecuteReader();
DT = new DataTable();
DT.Load(Dr);
if (DT.Rows.Count != 0)
{
return true;
}
else
{
return false;
}
}
catch (Exception EX)
{
ErrorMessage = EX.Message; return false;
}
finally
{
CN.Close();
}
}
CREATE PROC SP_INS_INPUT_PRODUCTION
@InvoiceID NVARCHAR(10),
@InvoiceDate SMALLDATETIME,
@CustomerID NVARCHAR(10),
@ProductID NVARCHAR(10),
@SupplyID NVARCHAR(10),
@SupplyNumber NVARCHAR(10),
@SupplyPrice NVARCHAR(10),
@PaymentID NVARCHAR(10),
@PaymentPrice NVARCHAR(10),
@PaymentDate SMALLDATETIME,
@PaymentIntroduce NVARCHAR(50)
AS
BEGIN
SET @InvoiceDate = GETDATE()
--1----------------------------------------Factor = Invoice
INSERT FACTOR(FACTOR_ID,MOSHTARI_ID,FACTOR_TARIKH) VALUES (@InvoiceID,@CustomerID,@InvoiceDate)
--2----------------------------------------AGHLAM = Supply
INSERT AGHLAM (KALA_ID,
FACTOR_ID,
AGHLAM_TEDAD,
AGHLAM_MABLAGH)
VALUES
(@ProductID,
(SELECT TOP 1 FACTOR_ID FROM FACTOR ORDER BY FACTOR_ID DESC),
@SupplyNumber,
@SupplyPrice)
---3---------------------------Payment = Pardcakht---------------------------
INSERT PARDAKHT(
--3--1----
FACTOR_ID,
--3--2----
MOSHTARI_ID,
--3--3----
PARDAKHT_ID,
--3--4----
PARDAKHT_MABLAGH,
--3--5----
PARDAKHT_SHARH,
--3-6-----
PARDAKHT_TARIKH
)
VALUES
(
--3--1----
(SELECT TOP 1 FACTOR_ID FROM FACTOR ORDER BY FACTOR_ID DESC),
--3--2----
(SELECT MOSHTARI_ID
FROM FACTOR
WHERE FACTOR_ID IN
(SELECT TOP 1 FACTOR_ID
FROM FACTOR ORDER BY FACTOR_ID DESC)),
--3--3----
@PaymentID,
--3--4----
@PaymentPrice,
--3--5----
@PaymentIntroduce,
--3--6----
@PaymentDate
)
END
فکر کنم کد بیان گر باشه اگه مشخص نبود بگویید توضیح دهم
میخواستم در چند جدول درج کنم با این روش زیر ، با خطا مواحه نمیشم ولی نمیدونم مشکل کار در چیست عملیات با موفقیت انجام نمیشود
در کلاسی این کد را قرار دادم تا بعدا شی از این کلاس درست کنم تا به ابن متد INPUT دست رسی پیدا کنم
public bool InputProductMethod(int InvoiceID, int CustomerID, int ProductID, int SupplyNumber,int SupplyPrice/*, int PaymentID, int PaymentPrice, string PaymentIntroduce*/)
{
SqlConnection CN = new SqlConnection(DBWrapper.ConnectionString);
try
{
SqlCommand CMD = new SqlCommand();
CMD.CommandText = "input";
CMD.CommandType = CommandType.StoredProcedure;
////
CMD.Parameters.AddWithValue("@InvoiceID", InvoiceID);
CMD.Parameters.AddWithValue("@CustomerID", CustomerID);
CMD.Parameters.AddWithValue("@ProductID", ProductID);
CMD.Parameters.AddWithValue("@SupplyNumber", SupplyNumber);
CMD.Parameters.AddWithValue("@SupplyPrice", SupplyPrice);
//CMD.Parameters.AddWithValue("@PaymentPrice", PaymentPrice);
//CMD.Parameters.AddWithValue("@PaymentIntroduce", PaymentIntroduce);
//CMD.Parameters.AddWithValue("@KALA_ID", PaymentID);
//
CMD.Connection = CN;//Connetion Vasl hastim ro bayad Assing konim
CN.Open();
// CMD.ExecuteNonQuery();
SqlDataReader Dr = CMD.ExecuteReader();
DT = new DataTable();
DT.Load(Dr);
if (DT.Rows.Count != 0)
{
return true;
}
else
{
return false;
}
}
catch (Exception EX)
{
ErrorMessage = EX.Message; return false;
}
finally
{
CN.Close();
}
}
CREATE PROC SP_INS_INPUT_PRODUCTION
@InvoiceID NVARCHAR(10),
@InvoiceDate SMALLDATETIME,
@CustomerID NVARCHAR(10),
@ProductID NVARCHAR(10),
@SupplyID NVARCHAR(10),
@SupplyNumber NVARCHAR(10),
@SupplyPrice NVARCHAR(10),
@PaymentID NVARCHAR(10),
@PaymentPrice NVARCHAR(10),
@PaymentDate SMALLDATETIME,
@PaymentIntroduce NVARCHAR(50)
AS
BEGIN
SET @InvoiceDate = GETDATE()
--1----------------------------------------Factor = Invoice
INSERT FACTOR(FACTOR_ID,MOSHTARI_ID,FACTOR_TARIKH) VALUES (@InvoiceID,@CustomerID,@InvoiceDate)
--2----------------------------------------AGHLAM = Supply
INSERT AGHLAM (KALA_ID,
FACTOR_ID,
AGHLAM_TEDAD,
AGHLAM_MABLAGH)
VALUES
(@ProductID,
(SELECT TOP 1 FACTOR_ID FROM FACTOR ORDER BY FACTOR_ID DESC),
@SupplyNumber,
@SupplyPrice)
---3---------------------------Payment = Pardcakht---------------------------
INSERT PARDAKHT(
--3--1----
FACTOR_ID,
--3--2----
MOSHTARI_ID,
--3--3----
PARDAKHT_ID,
--3--4----
PARDAKHT_MABLAGH,
--3--5----
PARDAKHT_SHARH,
--3-6-----
PARDAKHT_TARIKH
)
VALUES
(
--3--1----
(SELECT TOP 1 FACTOR_ID FROM FACTOR ORDER BY FACTOR_ID DESC),
--3--2----
(SELECT MOSHTARI_ID
FROM FACTOR
WHERE FACTOR_ID IN
(SELECT TOP 1 FACTOR_ID
FROM FACTOR ORDER BY FACTOR_ID DESC)),
--3--3----
@PaymentID,
--3--4----
@PaymentPrice,
--3--5----
@PaymentIntroduce,
--3--6----
@PaymentDate
)
END
فکر کنم کد بیان گر باشه اگه مشخص نبود بگویید توضیح دهم