Пропоную тут викладати свої корисні скріпти для роботи з УкрСкладом та допомагати іншим в їх написанні.(http://i.piccy.info/i7/415132c035cd64dc1d62acf704184fa7/1-5-444/38582668/sqlmeneger_240.jpg)
Наприклад, як за допомогою SQL-коду дописати до назви кожного товару конкретної групи слово чи словосполучення?
Сразу скажу, что
манипуляции с SQL запросами могут быть очень опасны для ваших данных. Они безвозвратно могут удалить необходимую вам информацию или изменить ее (например удалить весь товар).
Я надеюсь это тема поднялась не для обучения написанию SQL запросов (для этого есть книги и интернет), а в связи с наличием конкретных нужд... Не хотелось бы тратить время на то, что никто не будет использовать.
Вот вам запрос, помещайте его в отчет (отчет не выводит никаких данных, смотрите, не запустите его несколько раз, а то придется потом писать еще один запрос))), чтобы можно было по человечески выбрать группу товара, товар которой будет переименовываться (вложенных групп не коснется).
Запрос на добавление текста (впереди названия товара), помещенного в поле Произвольный текст в отчете для выбранной группы.
UPDATE
tovar_name
SET
tovar_name.name = '#текст_1#' || Tovar_name.name
WHERE
Tovar_name.tip=#товар_группа_№#
P.S.Не советую оставлять данный отчетик для общего пользования...
И еще добавлю перед выполнением любых операций (ну кроме выборки SELECT) в SQL менеджере делайте резерв базы данных.
Дякую!
А як прочитати поле "Мітка" в товарі? Де взяти всі назви полів до яких я можу звертатись в запитах?
Для этого вам лучше будет освоить некоторые программы, которые позволяют работать "напрямую" с файлами базы данных.
Информацию какая программа и как подключаться вы можете найти в уже освещенных вопросах.
http://www.softbalance.com.ua/forum/index.php?topic=869.msg7064#msg7064 (http://www.softbalance.com.ua/forum/index.php?topic=869.msg7064#msg7064)
http://www.softbalance.com.ua/forum/index.php?topic=1285.msg7250#msg7250 (http://www.softbalance.com.ua/forum/index.php?topic=1285.msg7250#msg7250)
Только хочу отметить, что я никаких дополнительных копирований файлов не осуществлял, возможно потому, что у меня ранее уже был установлен Firebird сервер.
P.S. Хочу еще раз отметить, что необходимо быть очень осторожным при работе "напрямую" с файлом базы данных. Более того, данный программный продукт (я об УкрСклад), не предназначен для модификаций со стороны пользователя ИМХО
Решил выложить список полей приблизительно 71 (из 75) таблицы (некоторые удалил).
Файл можно открыть Excel.
Отношения между таблицами не проставлял, т.к. многих отношений еще сам не понял, некоторые отношения неявные, сам хотел бы получить список отношений между ключевыми/неключевыми полями, но, к сожалению, генерировать его не умею.
Но из тех, которые пригодятся:
- Счет фактура (соотносятся по полям schet.num-schet_.pid):
- schet - таблица данных о счете
- schet_ - таблица товара в счете
- Производство (соотносятся по полям vyrnakl.num-vyrnakl_.pid):
- vyrnakl - таблица данных о документе
- vyrnakl_ - таблица товара в документе
- Расходная накладная (соотносятся по полям vnakl.num-vnakl_.pid):
- vnakl - таблица данных о счете
- vnakl_ - таблица товара в счете
Могу ошибаться, пишу по памяти.
Если хотите связать свой запрос с метками, то вам нужен приблизительно такой запрос:
select
*
FROM
params,schet_ left join schet on pid=num
where
params.name like ( '%'||'\_0\_' || cast(schet.doc_mark_type as varchar(10)) ||'%') escape '\'
order by schet.num
Если вам нужно проделать такое же с производством/расходной накладной, то необходимо вместо выделенного жирным шрифтом числа
0 использовать число 20 для производства и 1 для расходной накладной.
- могу ошибаться т.к. запрос не тестил.