📄 uaspvendorquery.pas
字号:
unit uASPVendorQuery;
{$WARN SYMBOL_PLATFORM OFF}
interface
uses
ComObj, ActiveX, AspTlb, aspVendorQueryBiz_TLB, StdVcl, dmVendorQuery;
type
TmtsVendorQuery = class(TASPMTSObject, ImtsVendorQuery)
private
FVendorQueryDM: TVendorQueryDM;
FVendorId: string;
protected
function GetGoodsInfoByBarCode(const AId: WideString): WideString;
safecall;
function GetAllGoodsInfoByVendorId(const AId: WideString): WideString;
safecall;
procedure SetVendorId(const AId: WideString); safecall;
public
procedure Initialize;override;
destructor Destroy;override;
end;
implementation
uses ComServ, SysUtils;
function TmtsVendorQuery.GetGoodsInfoByBarCode(
const AId: WideString): WideString;
var
tmpstr, str: string;
i, n: integer;
begin
result := '';
FVendorQueryDM.cdsGoodsMaster.Close;
FVendorQueryDM.cdsGoodsMaster.CommandText :=
'select VendorId, BarCode,Name,Amount,SafetyStock,MinOrder,MaxOrder from t_GoodsMaster '+
'where BarCode='+QuotedStr(AId);
FVendorQueryDM.cdsGoodsMaster.Open;
if FVendorQueryDM.cdsGoodsMaster.RecordCount <1 then
begin
result := '</p>对不起,没有找到此数据!</p>'+
FVendorQueryDM.cdsGoodsMaster.CommandText;
exit;
end
else if FVendorQueryDM.cdsGoodsMaster.FieldByName('VendorId').AsString <> FVendorId then
begin
result := '</p>对不起,你不负责此货物!</p>';
exit;
end;
n := FVendorQueryDM.cdsGoodsMaster.FieldCount - 1;
for i := 1 to n do
begin
tmpstr := Format('<p>%s: %s</p>',[FVendorQueryDM.DSTPGoodsMaster.Columns[i-1].Title.Caption,
FVendorQueryDM.cdsGoodsMaster.Fields[i].AsString]);
str := str + tmpstr;
end;
FVendorQueryDM.cdsGoodsMaster.Close;
result := str;
end;
function TmtsVendorQuery.GetAllGoodsInfoByVendorId(
const AId: WideString): WideString;
begin
FVendorQueryDM.cdsGoodsMaster.Close;
FVendorQueryDM.cdsGoodsMaster.CommandText :=
'select BarCode,Name,Amount,SafetyStock,MinOrder,MaxOrder from t_GoodsMaster ' +
'where VendorId='+QuotedStr(AId);
FVendorQueryDM.cdsGoodsMaster.Open;
result := FVendorQueryDM.DSTPGoodsMaster.Content;
FVendorQueryDM.cdsGoodsMaster.Close;
end;
procedure TmtsVendorQuery.Initialize;
begin
inherited;
FVendorQueryDM := TVendorQueryDM.Create(nil);
end;
destructor TmtsVendorQuery.Destroy;
begin
FVendorQueryDM.Free;
inherited;
end;
procedure TmtsVendorQuery.SetVendorId(const AId: WideString);
begin
FVendorId := AId;
end;
initialization
TAutoObjectFactory.Create(ComServer, TmtsVendorQuery, Class_mtsVendorQuery,
ciMultiInstance, tmApartment);
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -