Диалог "Заменить в товарах"

Материал из Alta-Soft Wikipedia
Перейти к навигации Перейти к поиску

Назначение

Диалог позволяет производить более сложные операции над данными главного блока документа в программе Альта-ГТД, чем классический диалог Правка|Заменить. Диалог "Заменить в товарах" вызывается командой меню Документ|Заменить в товарах....

ReplaceD.png


Применение

Чтобы воспользоваться диалогом, необходимо выставить параметры замены в 4-х разделах. В общих чертах разделы можно описать как: Где?, В каком случае?, Каким образом?, Чем именно?. В зависимости от выбранной операции в откидном списке Действие наборы настроек могут немного видоизменяться. Диалог может осуществлять следующие действия:

  • замена текста в полях
  • арифметическая операция над полями
  • распределение числа в поле по разным товарам.

Диалог работает над главным блоком документа. На пример, для документов ГТД и Инвойс - это товары. А у документа "Опись" главный блок это перечень документов. В этом отличие диалога "Заменить в товарах" от простого диалога Правка|Заменить. Последний заменят любой текст видимый на экране, независимо в каком дополнении он находится.

Однажды выбранную комбинацию настроек можно сохранить в INI-файл при помощи кнопки "Сохранить" с изображением дискеты в нижней части диалога. Для повторного выполнения аналогичной операции над другим документом настройки можно загрузить из файла кнопкой "Открыть". При открытии диалога настройки выставляются согласно последней успешно проведенной операции.

Рассмотрим основные режимы работы диалога.

Замена текста

Чтобы войти в этот режим, в откидном списке Действие надо выбрать пункт Заменить. Далее в разделе 1. указывается в каком поле надо осуществлять замену. Можно выбрать или все поля подряд или указать конкретное поле. В разделе 2. указывается в каком случае проводить замену. Возможны варианты

  • Всегда
  • Если поле пустое или НЕ пустое
  • Если содержимое поля равно
  • Если содержимое в заменяемом поле соответствует регулярному выражению

Для документа Инвойс появляется дополнительный пункт "при выполнении условия", который позволяет задать условие отбора по в специальном редакторе условий. Редактор аналогичен редактору условий от строк формирования графы 31.

В разделе 3. задается как именно произвести замену:

  • Заменить целиком
  • Дописать новый текст перед или после существующего
  • Заменить конкретную подстроку

В разделе 4. вводится текст, которым будет осуществляться замена.

Не сложно видеть, что в режиме: 1.Во всех полях + 2.Всегда + 3.Заменить подстроку работа диалога будет идентична классическому диалогу Заменить. Однако, меняя настройки можно добиться гораздо более интеллектуального поведения замены.

Например, в документе Инвойс заполнить поле "Производитель" 31_FIRMA значением из поля "Торговая Марка" 31_TM, но только в тех товарах где поле "Производитель" пустое:

ReplaceDExample1.png

Арифметическая операция над полем

Чтобы войти в этот режим, в откидном списке Действие надо выбрать один из пунктов Прибавить, Вычесть, Удалить или Разделить. Далее в разделе 1 указывается в каком поле надо осуществить арифметическую операцию. Можно выбрать или все поля или указать конкретное поле.

В разделе 2 указывается, в каком случае проводить замену. Возможны варианты:

  • Всегда;
  • Если поле пустое или НЕ пустое;
  • Если содержимое поля равно;
  • Если содержимое в заменяемом поле соответствует регулярному выражению.

В разделе 3 доступен только вариант "Всё поле целиком".

В разделе 4 указывается число, с которым будет производиться математическое действие над полем, выбранным в разделе 1:

  • Число, указанное пользователем;
  • Значение какого-либо другого числового поля того же товара.

Пример:
В документе ГТД в вес брутто был ошибочно указан не в килограммах, а в тоннах. Необходимо перевести вес в килограммы, увеличив 35-ую графу (35_1) во всех товарах в 1000 раз.

Zamen03.png

Распределение значения по товарам

Чтобы войти в этот режим, в откидном списке Действие надо выбрать пункт Распределить. Далее в разделе 1 указывается, по какому полю надо осуществлять распределение.

В разделе 2 указывается, в каком случае проводить замену. Возможны варианты:

  • Всегда;
  • Если поле пустое или НЕ пустое;
  • Если содержимое поля равно;
  • Если содержимое в заменяемом поле соответствует регулярному выражению.

В разделе 3 задается, как именно произвести замену:

  • Заполнить поле распределяемой величиной (исходное число будет просто заменено);
  • Прибавить распределение;
  • Вычесть распределение.

В разделе 4 указывается:

  • Распределяемое число;
  • Поле, пропорционально которому будет производиться распределение (если его не указать, распределяемое число будет разделено поровну по всем указанным товарам).

Пример:
В документе ГТД требуется распределить 100$ в графе "Цена товара" (42_1) в товарах 3,4 и 5 пропорционально цене каждого из этих товаров. Чтобы после замены сработал пересчет числовых полей - надо поставить флажок "После изменения поля вызвать постобработку".

Zamen04.png