Здравствуйте.
Вот небольшой пример
https://youtu.be/9WK1FM2_tDc Таблица
https://goo.gl/4u23t7 (необходимо сделать копию)
Суть в том, чтобы вести запись только в одном листе "История". На "Складе" остатки отображаются через формулу:
=QUERY('История'!B:E;"select B, C, sum(D) where E=true group by B, C")
Т.е. если в "Истории" будет запись без TRUE, то ее можно считать "непроведенной".
Лист "Заказы" служит пояснением для "Истории", возможно, надо как-то расширить связь этих Таблиц, но она все равно будет условной.
Пояснения к коду. Серверная часть нуждается в
LockService, чтобы разрешить очередь записи.
Можно сделать форму просмотра заказов, с возможностью помечать FALSE в "Истории". Может быть даже "Редактировать", но лучше по-моему, делать копию и записывать новый заказ, помечая прежний как FALSE. Также необходимо продумать регламент, т.к. Таблицы "нерезиновые" и необходимо максимально часто переносить остатки.
Пояснения к концепту. Ваше представление, которое приведено выше, вряд ли подойдет для реализации в Таблицах, уже только потому, что никаких идентификаторов строк, и тем более связей между Таблицами, не существует. Я предлагаю вообще ничего не удалять. Лучше делать "перенос остатков" и прочих параметров в новые Таблицы (или наоборот), чтобы иметь более полноценную картину действий.
Пожалуйста, измените теги в топике на Google script и Spreadsheets. При текущем теге ответ на вопрос должен быть примерно таким https://www.google.com/enterprise/marketplace/sear...