Изменения

Перейти к: навигация, поиск

Импорт баз данных

10 934 байта добавлено, 09:37, 18 сентября 2012
Новая страница: «Для импорта базы рассылки в формате MS Excel или DBF (а также любого другого формата, поддержи…»
Для импорта базы рассылки в формате MS Excel или DBF (а также любого другого формата, поддерживаемого MS Excel), создайте заказ, в который необходимо импортировать, потом в главном меню основного окна программы выберите пункт «Связь» - «Импорт БД из Excel» (необходимо наличие прав создания почтовых заказов). Откроется окно следующего вида:

[[Файл:Импорт из Excel.png]]

В окне импорта необходимо выбрать заказ, в который нужно импортировать базу, шаблон загрузки, а также указать имя файла-источника, из которого необходимо загружать.

Редактирование шаблонов доступно путем нажатия на кнопку «Шаблоны…».<br />
Шаблон состоит из заголовка, который в себя включает название шаблона, номер первой загружаемой строки в файле, а также условие загрузки каждой конкретной строки (номер первой строки и условие загрузки может задаваться формулами), и строк описания значений, помещаемых в каждое конкретное поле базы данных адресов. Строка состоит из названия поля (кратко по-английски), описания (развернуто по-русски), значения по-умолчанию, и значения. Если поле «значение» пустое – система использует значение поля «значение по-умолчанию». Поля «значение» и «значение по-умолчанию» описывают преобразования данных на внутреннем языке формул.

Описание языка формул:<br />
*Константы: константы бывают целочисленными, дробными и строковыми. Значения целочисленных и дробных констант указываются «как есть», а строковые – в одинарных кавычках. При этом, если внутри строковой константы встречается символ одинарной кавычки он должен быть задвоен, для указания интерпретатору того, что он не является признаком конца константы.
*Логические операции: >, <, =, ! - Больше, меньше, равно, не равно.
*Арифметические операции: +, -, *, /
*Операция конкатенации строк: +
Условный оператор: IF(a,b,c) или IF(a,b) – В первом случае возвращает b, если a истинно (не равно нулю или пустой строке), иначе – c. Во втором случае – возвращает a, если оно истинно, иначе – b.
*Функции:
UPCASE(s) – возвращает строку s в верхнем регистре.<br />
LCASE(s) – возвращает строку s в нижнем регистре.<br />
LEN(s) – возвращает количество символов в строке s.<br />
POS(s, substr) – возвращает номер первого символа первого включения подстроки substr в строку s, возвращает 0, если включения подстроки отсутствуют.<br />
PARAM(s, i) – возвращает i-й элемент строки s, разделенной запятыми на элементы.<br />
LEFT(s, i) – возвращает i первых символов строки s.<br />
RIGHT(s, i) – возвращает i последних символов строки s.<br />
REPLACE(s, s1, s2) – возвращает строку s, в кот. все включения подстроки s1 заменены строкой s2 (не чувствительно к регистру).<br />
REMSPACE(s) – возвращает сроку s без начальных и конечных запятых и пробелов, а также начальных точек.<br />
INT(v) – возвращает значение типа “целое”, приводя вариантное значение v к числовому типу, а затем округляя его. В том числе используется как функция округления.<br />
FLOAT(v) – возвращает значение типа “число”, приводя вариантное значение v к числовому типу, переводя в число цепочку символов до первого нецифрового символа (либо точки или запятой).<br />
ROUNDUP(f) – округляет число f до ближайшего большего по модулю целого числа.<br />
ROUNDDN(f) – округляет число f до ближайшего меньшего по модулю целого числа.<br />
STR – возвращает значение типа “строка”, приводя вариантное значение v к строковому типу.<br />
QUOTEDSTR(s) – квотирует строку s символом «’» (одинарная кавычка). Возвращает строку s, помещенную между квотирующими символами, при этом все вхождения в строку s квотирующего символа задваиваются.<br />

MakeAddress(s) – возвращает значение, полученное путем преобразований адреса s для приведения его к внутреннему формату программы. В процессе преобразования до нескольких раз происходит замена буквосочетаний по таблице замены (ее редактирование доступно по нажатию кнопки «Автозамена»), поиск улиц по базе КЛАДР с точностью до одного знака, и некоторые другие операции, нацеленные на исправление ошибок в написании адреса.

ReplaceAddress(target, address) – Возвращает адрес последней доставки корреспонденции получателю target по адресу address от текущего клиента. При отсутствии такой доставки, возвращает address.

GetStationCode(s) – возвращает код станции метро, ассоциированный в системе с адресом s. В случае невозможности идентифицировать станцию метро – возвращает 1.

GetPrice – (в разработке) возвращает рассчитанное значение цены, на основе прайс-листа клиента и данных о корреспонденции.

GetKurierByStation(i) – возвращает код курьера, ассоциированного со станцией метро с кодом i.

GetNewNumber – Возвращает не занятый номер единицы корреспонденции в текущем заказе.

FileName – Возвращает имя загружаемого файла.

Recno – Возвращает номер текущей строки загружаемого файла (от первой загружаемой строки).

Reccount – Возвращает количество строк, найденных в файле (от первой загружаемой строки).

Field(table, id, field) – Возвращает значение поля field таблицы table, записи с идентификатором id. В случае отсутствия записи удовлетворяющей условиям, возвращает Null. Список таблиц можно получить, выполнив запрос (см. раздел «SQL-отчеты»)“show tables from courier”, а список полей таблицы можно получить, выполнив запрос “describe table”, где table – название таблицы (необходимо наличие прав администрирования).

Null – Возвращает пустое значение.

Да, True, Нет, False – константы, соответствующие булевым значениям.

A..Z – Ссылки на соответствующие столбцы загружаемого файла. Возможно использование как функции, с указанием целочисленного параметра – сдвига строки относительно текущей. Например d(-2) вернет значение столбца D на 2 строки выше текущей.

Также возможно использование в формуле ссылки на значение другого поля, просто указав его название (английское), при этом в случае возникновения цикличных ссылок они разрешаются путем возвращения пустого (или нулевого) значения поля, на котором образовался цикл.

Например:
{|
|<pre>
Address=b (полю «адрес» присваивается значение столбца “b”)
Station=GetStationCode(address) (полю «код станции метро» присваивается рассчитанное значение кода метро из данных в поле
«адрес»)
To_Kurier=GetKurierByStation(station) (полю «Выдать курьеру» присваивается значение, соответствующее коду станции метро,
присвоенному полю «код станции метро»)
</pre>
|
|}
587
правок

Навигация