Online Mind Mapping and Brainstorming

Create your own awesome maps

Online Mind Mapping and Brainstorming

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account? Log In

Создание печатной формы МойСклад by Mind Map: Создание печатной формы МойСклад
5.0 stars - 9 reviews range from 0 to 5

Создание печатной формы МойСклад

Отчеты

Циклы

Итоги

Перемещение

Выражения

Решения

Возможные ошибки

Вспомогательные методы formatter'а

formatter - глобальный объект доступный во всех печатных формах. Содержит набор полезных вспомогательных методов.

countPlaces

Всего мест: ${formatter.printIf(formatter.countPlaces(o) > 0, formatter.printNumber(formatter.countPlaces(o)))}

cost

Получение себестоимости для товарной позиции:${formatter.cost(row)}

currentUser

Доступ к данным текущего пользователя формирующего отчет ${formatter.currentUser.secondName + " " + formatter.currentUser.firstName + " (" + formatter.currentUser.uid + " )"}

currentMoment

findAttribute

Вставка в печатную форму значений пользовательских полей - ${formatter.findAttribute(o.sourceAgentRequisite.agent, "Регион").valueString}

firstNotEmpty

Выводит первый не пустой аргумент ${formatter.firstNotEmpty(position.salePrices.findPrice(priceTypeId).currencyRef.name, defaultCurrency.name, "руб.")}

getGoods

formatter.getGoods(o) - возвращает список товаров в документе formatter.getGoods(o).size() - кол-во товаров в документе

getServices

Возвращает список услуг документа:formatter.getServices(o)

getCurrency

Всего отпущено на сумму ${formatter.printAmount(formatter.getCurrency(o), formatter.goodsAmount(o))}

goodsAmount

Всего отпущено на сумму ${formatter.printAmount(formatter.getCurrency(o), formatter.goodsAmount(o))}

generateList

Используется для создания печатной формы этикеток:

localize

Без комментариев ${formatter.localize("template." + row.type)} , где row.type тип документа

round

Округление значения (отбрасывает дробную часть) формула ${formatter.round(105/10)} выведет значение 10

printIf

${formatter.printIf(row.applicable, "Да")}

printIfElse

formatter.printIfElse(empty([...]), [true], [false]) - условный вывод

printAgentName

Полное наименование контрагента по его идентификатору. ${formatter.printAgentName(id)}

printAmount

Всего отпущено на сумму ${formatter.printAmount(formatter.getCurrency(o), formatter.goodsAmount(o))}

printShortAmount(price)

Форматирует цену товара.

printShortAmountWithChange(price)

printTags

Выводит список тегов контрагента ${formatter.printTags(row)}

splitByLines(text, maxLines, lineLength)

Разбивает строку text на несколько срок по lineLength символов. Выводятся только первые maxLines срок. Используется для вписывания длинного текста в ячейки Excel

splitGoodList(positions, N)

Используется для печати ценников из карточки товара. Разбивает список товаров positions на подгруппы по N элементов. Полезно для выведения данных в несколько колонок.

stock(position)

Получить остаток товара на текущем складе для казанной позиции ${formatter.stock(position)}

imageAttribute

Добавление изображения в печатную форму из пользовательского поля типа "Файл" ${formatter.imageAttribute(formatter.loadAgent(o.sourceAgentRequisite.agent.id), "название поля", true)}

Подгрузка сущности

Методы загружающие объект сущности справочника МойСклад по идентификатору. Например, позволяет загрузить объект контрагента, зная лишь идентификатор id контрагента.

Время и дата

Форматирование данных

Дата

Деньги

POI

Java API for Microsoft Documents Позволяет получить низкоуровневый доступ к Excel таблице в процессе формирования формы. Можно считывать и обновлять данные в любой части таблицы. В качестве сложного примера применения POI можно рассмотреть структуру стандартной печатной формы ТОРГ-12.

Объекты

Краткий пример объектов и их свойств. Полный список по ссылкам.

Доступные объекты

Примеры формул

Формулы

Теги

Запись формул Excel

Формирование формул Excel на стороне сервера Для вставки в печатную форму формулы Excel используются квадратные скобки $[формула] Написание формулы соответствует англоязычному аналогу формул Excel. Например: Excel - СУММ(A1) Печатная форма - $[SUM(A1)] Excel - СУММ(A1;B2) Печатная форма - $[SUM(A1,B2)] Excel - СУММ(A3:D10) Печатная форма - $[SUM(A3:D10)]

Полезные формулы

Функции

Свойства

Разъяснить

Необходимо разобраться в формулах

Вопросы

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

Telegram: @wmakeev

Skype: w.makeev

w.makeev@gmail.com

Штрих-коды / ценники / этикетки

Генерация штрих-кода (на стороне сервера)

Генерация штрих-кода (на стороне Excel)

Штрих-коды можно генерировать непосредственно в Excel Есть три варианта:   Использовать внешнюю компоненту (к примеру http://strokescribe.com/). Недостатки: Компоненту необходимо устанавливать на каждый компьютер. Требует настройку разрешений в Excel. Сложно настроить генерацию большого кол-ва штрих-кодов. Использовать макрос и специальный штрифт Недостатки: Необходимость использовать макросы, требует настройку разрешений в Excel, чтобы форма могла сработать. Необходимо устанавливать специальный штрифт. Использовать специальный штрифт и формулу Excel Недостатки: Необходимо устанавливать специальный штрифт. Формулы для генерации штрих-кода не самые простые. В ветке представлено описание третьего варианта, как, с моей точки зрения, наименее проблемного.  

Ограничения Excel

В Excel максимальное кол-во разрывов страниц - 1026. Поэтому, при печати большого кол-ва наклеек/этикеток (больше 1026), где используются разрывы страниц, итоговая печатная форма в Excel корректно открываться не будет.

Работа с ценами

Официальная справка МойСклад

Общая информация о шаблонах печатных форм

Создание шаблонов печатных форм (основные формулы)

Связи между документами

Доступ к связанным документам из отгрузки

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

Список отгрузок из заказа

Разное

Объектная модель печатных форм (не закончено!)

Общие моменты Не законченная ветка карты (много неточностей)