मेरा निम्नलिखित कार्य है
ALTER FUNCTION [dbo].[ActualWeightDIMS]
(
-- Add the parameters for the function here
@ActualWeight int,
@Actual_Dims_Lenght int,
@Actual_Dims_Width int,
@Actual_Dims_Height int
)
RETURNS varchar(50)
AS
BEGIN
DECLARE @ActualWeightDIMS varchar(50);
--Actual Weight
IF (@ActualWeight is not null)
SET @ActualWeightDIMS = @ActualWeight;
--Actual DIMS
IF (@Actual_Dims_Lenght is not null) AND
(@Actual_Dims_Width is not null) AND (@Actual_Dims_Height is not null)
SET @ActualWeightDIMS= @Actual_Dims_Lenght + 'x' + @Actual_Dims_Width + 'x' + @Actual_Dims_Height;
RETURN(@ActualWeightDIMS);
END
लेकिन जब मैंने इसका उपयोग करने की कोशिश की, तो मुझे निम्न त्रुटि मिली "डेटा प्रकार int के लिए varchar value 'x' को कनवर्ट करते समय रूपांतरण विफल रहा।" जब मैं निम्नलिखित चयन कथन का उपयोग करता हूं
select
BA_Adjustment_Detail.ID_Number [ID_Number],
BA_Adjustment_Detail.Submit_Date [Submit_Date],
BA_Category.Category [category],
BA_Type_Of_Request.Request [Type_Of_Request],
dbo.ActualWeightDIMS(BA_Adjustment_Detail.ActualWeight,BA_Adjustment_Detail.Actual_Dims_Lenght,BA_Adjustment_Detail.Actual_Dims_Width,BA_Adjustment_Detail.Actual_Dims_Height) [Actual Weight/DIMS],
BA_Adjustment_Detail.Notes [Notes],
BA_Adjustment_Detail.UPSCustomerNo [UPSNo],
BA_Adjustment_Detail.TrackingNo [AirbillNo],
BA_Adjustment_Detail.StoreNo [StoreNo],
BA_Adjustment_Detail.Download_Date [Download_Date],
BA_Adjustment_Detail.Shipment_Date[ShipmentDate],
BA_Adjustment_Detail.FranchiseNo [FranchiseNo],
BA_Adjustment_Detail.CustomerNo [CustomerNo],
BA_Adjustment_Detail.BillTo [BillTo],
BA_Adjustment_Detail.Adjustment_Amount_Requested [Adjustment_Amount_Requested]
from BA_Adjustment_Detail
inner join BA_Category
on BA_Category.ID = BA_Adjustment_Detail.CategoryID
inner join BA_Type_Of_Request
on BA_Type_Of_Request.ID = BA_Adjustment_Detail.TypeOfRequestID
मैं जो करना चाहता हूं वह है अगर एक्चुअल वाइट शून्य नहीं है तो "वेट वेट / डीआईएमएस" के लिए एक्चुअल वाइट को लौटा दें या फिर एक्चुअल_डिम_सुबह, चौड़ाई और ऊंचाई का उपयोग करें।
यदि यह डीआईएमएस है, तो मैं आउटपुट को लेन्ग्थक्सविडटएक्सहाइट (15x10x4) के रूप में प्रारूपित करना चाहता हूं। The RealWeight, Adcutal_Dims_Lenght, Width and Height सभी int (पूर्णांक) मान हैं, लेकिन "वास्तविक वजन / DIMS" के लिए आउटपुट varchar (50) होना चाहिए।
मैं कहाँ गलत हो रहा हूँ?
धन्यवाद
संपादित करें: उपयोगकर्ता ASP.net पेज पर केवल वजन या डीआईएमएस ले सकता है और यदि उपयोगकर्ता ने डीआईएमएस का चयन किया है, तो उन्हें लंबाई, चौड़ाई और ऊंचाई की आपूर्ति करनी चाहिए। अधिक यह ASP.net पृष्ठ पर त्रुटि फेंक देगा। क्या मुझे इसके बारे में चिंता करनी चाहिए?