bpg писал(а):P.S. Не могу понять как в 1С бухи сидят и каждый делает свою накладную? и видят если она сохранилась? Они там при каждом сохранении рефрешат все данные? Это не сильно долго? Работает же быстро ...
Откровенно говоря - понятия не имею. Последний раз я работал с 1С ещё в конце прошлого века, когда она была версии 7.7.

bpg писал(а):Только вот засада, в самой программе на стороне клиента все ок, картинка появляется на другой вкладке, а вот на другом подключении к БД, хоть бы даже через IBExpert пока принудительно не обновишь подключение, ничего не помогает.
Вот это уже ближе к теме.
Post и ApplyUpdate управляют локальным кэшем данных на стороне клиента. Эти штуки остались ещё со времён локальных таблиц. У Вас, вполне возможно неправильно настроено подтверждение транзакции. Хотя может быть и не неправильно, тем не менее автоматического подтверждения не происходит, следовательно сервер хранит полученные данные у себя во временной таблице. Разрыв связи с клиентом означает, что на самом сервере происходит автоматическое подтверждение транзакции.
Давайте посмотрим настройки компонента SQLTransaction. У него есть свойство Action, которое заведует подтверждением или отменой транзакций в автоматическом режиме. По умолчанию оно имеет значение caRollback, т.е. отмена транзакции. Если выставить значение в caCommit, то сразу же как только Вы вносите какие-либо данные в свой локальный набор данных (SQLQuery)
и после того, как Вы передвигаетесь на новую строку данных, происходит автоматическое подтверждение транзакции для сервера. Этот режим превосходно подходит, когда изменений\дополнений данных немного. если же изменений\дополнений бешеное количество, то лучше всего применить ручное управление транзакциями.
Например, Вам нужно добавить в какую-то таблицу 50 000 записей. В режиме подтверждения транзакции для каждой записи, можно будет себе ногти до локтей изгрызть, пока дождёшся окончания вставки.

В этом случае свойство Action лучше поставить в caNone (т.е. ничего не делать), а перед началом вставки написать SQLTransaction.StartTransaction, а после окончания всех вставок написать SQLTransaction.Commit.