Организация правильной многопользовательской записи в dbt таблицу
0 (0)
Организация правильной многопользовательской записи в dbt таблицу ( George 14.01.2013 09:46 )
5(1)Выполняю добавление записей в postdoc.dbt (RS-Bank).
var bRet:bool, oTblPost:object; oTblPost=TBFile("postdoc.dbt","w",0,null,"bank.def"); clearrecord(oTblPost); oTblPost.rec.Account_Payer=sAccPayer; oTblPost.rec.Real_Payer=sAccPayer; oTblPost.rec.Account_Receiver=sAccReceiver; oTblPost.rec.Real_Receiver=sAccReceiver; oTblPost.rec.Sum=mSum; bRet=insert(oTblPost); close(oTblPost); return bRet;
Я так понимаю, что для многопользовательского добавления такое создание объекта TBFile неверное.
Как правильно создавать объект TBFile, что бы обеспечить многопользовательский процесс добавления новой записи?
>> ОтветитьПочему неверно? ( JVR 14.01.2013 15:32 )
3(2)Что конкретно смущает?
>> Ответитьпри интенсивной работе появляется некая ошибка, связанная со структурой postdoc.dbt ( George 14.01.2013 15:42 )
5(1)Смущает некоторые жалобы пользователей, при интенсивной работе появляется некая ошибка, связанная со структурой postdoc.dbt, я сам не видел, пишу со слов пользователей.
Решил заранее спросить про верность многопользовательского добавления.
>> ОтветитьНу ... ( JVR 14.01.2013 15:55 )
5(1)конечно хотелось бы увидеть саму ошибку
Вообще ничего критичного в данном макросе не вижу.
Можно предположить следующий вариант - Какой-то функционал (не этот макрос, какой-то другой, или ядро) при обращении к postdoc использует механизм транзакций - может так получиться, что в момент срабатывания вашего макроса postdoc заблокирован транзакцией - в этот момент может появиться сообщение типа "обнаружен deadlock"
>> ОтветитьНет, я не уверен, но уточнял - сообщения не от дедлоках ( George 14.01.2013 16:14 )
5(1)То есть, такой вариант добавления - вполне применим при многопользовательском доступе?
>> ОтветитьДа ( JVR 14.01.2013 16:37 )
5(1)Not specified
>> ОтветитьСпасибо, все понятно! ( George 14.01.2013 17:15 )
5(1)Спасибо, все понятно!
>> Ответить