validation cfinvoke
The database queries I had at the top of the page were moved into a CFC and now it is taking noticeable amount of time in displaying the data. how to make data entry validation that does not happen inconsistency.
Ex :
1. AddItem.cfm
<cfinvoke component="#Application.ComponentPath#.inventory.Stock"
method="qtymin"
datasource ="#iif(isDefined('DSN'),'DSN','Attributes.DSN')#"
itemcode="#varItemCode#"
trans_date="#createodbcdate(qhead.whtreqdate)#"
trans_type="STF"
qty="#QTY#"
qtyrr="#QTY#"
qtysn="#QTY#"
qtyprod="#QTY#"
unitprice="0"
currencyunit="#COOKIE.currencyid#"
docno="#whtreqnum#"
lstbin="#evaluate('lstBinQty#idx#')#"
whid="#COOKIE.LOCATION_ID#"
companyid="#cookie.companyID#"
>
2. Stock.cfc
<cffunction name="qtymin" access="public" output="yes">
<cfargument name="datasource" type ="string" required="true" default="#REQUEST.DSN#" />
<cfargument name="itemcode" type="string" required="true" default=""/>
<cfargument name="trans_date" type="date" required="true" default=""/>
<cfargument name="trans_type" type="string" required="true" default=""/>
<cfargument name="qty" type="numeric" required="true" default=0/>
<cfargument name="qtyrr" type="numeric" required="true" default=0/>
<cfargument name="qtysn" type="numeric" required="true" default=0/>
<cfargument name="qtyprod" type="numeric" required="true" default=0/>
<cfargument name="currencyunit" type="string" required="true" default=""/>
<cfargument name="docno" type="string" required="true" default=""/>
<cfargument name="lstbin" type="string" required="true" default=""/>
<cfargument name="whid" type="string" required="true" default=""/>
<cfargument name="companyid" type="string" required="true" default=""/>
<cfargument name="reason" type="string" required="true" default=""/>
<cfquery name="qavailableitem" datasource="#datasource#">
--------------SELECT-------------------------------
</cfquery>
<cfif qavailableitem.recordcount gt 1 and qavailableitem.item_qty gt 0>
<cfif qavailableitem.item_qty lt qty>
<cfquery name="qUpdateavailableitem1" datasource="#datasource#">
--------------------------UPDATE--------------------------------
</cfquery>
<cfquery name="qUpdateavailableitem2" datasource="#datasource#">
------------------------------------------UPDATE-------------------------------
</cfquery>
</cfif>
<cfquery name="qavailableitem" datasource="#datasource#">
----------------------------------SELECT-----------------------------
</cfquery>
<cfquery name="qavailableitem" dbtype="query">
------------------------INSERT---------------------
</cfquery>
</cfif>
</cffunction>
