143
void __fastcall TdssmRemoteData::RequestAddSpare (int SpareID, double Count)
{
//
UserIsSubdivisionUser();
if ( Count <= 0 )
throw new Exception("Количество - целое, положительное число");
SpareStorage(SpareID, -Count);
TADOQuery * Q = dmServer->GetQuery("select * from request_spares where id = 0");
try
{
//
Q->Insert();
Q->FieldByName("id_request")->AsInteger = FRequestID;
Q->FieldByName("id_spare")->AsInteger = SpareID;
Q->FieldByName("date")->AsDateTime = Now();
Q->FieldByName("spare_count")->AsFloat = Count;
Q->Post();
Q->Free();
}
catch(...)
{
//
SpareStorage(SpareID, Count);
Q->Free();
throw;
}
}
void __fastcall TdssmRemoteData::RequestDeleteSpare (int RequestSparesID)
{
//
UserIsSubdivisionUser();
TADOQuery *Q = dmServer->GetQuery("select * from request_spares where id = " +
IntToStr(RequestSparesID));
try {
//
if ( Q->RecordCount == 0 )
throw new Exception(c_Msg_Record_not_find);
SpareStorage(Q->FieldByName("id_spare")->AsInteger, Q-
>FieldByName("spare_count")->AsFloat);
Q->Delete();
Q->Free();
} catch (...)
{
Q->Free();
throw;
}
}