====== Склад ======
[[http://ubilling.net.ua/?module=fnpages&pid=ubpay|{{ :buy-100u.png?nolink&|}}]]
**Дозволяє:**
* Вести базовий складський облік
* Вести довідник категорій ТМЦ
* Вести довідник типів ТМЦ
* Вести довідник складських приміщень
* Вести довідник постачальників
* Проводити прихідні операції
* Проводити розхідні операції
* Бронювати видані, але ще невідомо чи витрачені ТМЦ за працівниками.
* Контролювати залишки ТМЦ на складських приміщеннях
* Проводити пошук ТМЦ по складських приміщеннях
* Отримувати повідомлення про вичерпання резерву конкретних ТМЦ на складах
* Гнучко розподіляти права співробітників за функціями модуля
* Проводити інвентаризацію складських приміщень
====== Використання ======
Для того, щоб скористатися функціоналом модуля, можна скористатися ось такою ось іконкою на панелі завдань
{{:warehouse_0.png?|}}
Під час першого використання нашому погляду має постати приблизно така картина
{{:whdoc1.png?800|}}
Яка всім своїм виглядом натякає на те, що слід заповнити деякі довідники
{{:whdoc2.png?800|}}
Зокрема довідник категорій ТМЦ
{{:whdoc3.png?800|}}
Довідник типів ТМЦ (Так, у всіх ваших ТМЦ мають бути категорія і тип. Якщо ви не можете їх визначити за видом або призначенням цієї ТМЦ - значить її у вас немає)
{{:whdoc4.png?800|}}
Так, якось ось так
{{:whdoc5.png?800|}}
Також ви можете додати довільну кількість складських приміщень, на яких ви зберігатимете ваші ТМЦ
{{:whdoc6.png?800|}}
А також заповнити довідник постачальників, від яких ви будете отримувати ці самі ТМЦ
{{:whdoc7.png?800|}}
При отриманні від постачальників ТМЦ, ви маєте проводити прихідні операції, так, по одній на кожен з типів ТМЦ, що прибули.
{{:whdoc8.png?800|}}
Надалі ви зможете проводити з цими ТМЦ уже розхідні операції
{{:whdoc9.png?800|}}
Для цього потрібно вибрати складське приміщення
{{:whdoc9_1.png?800|}}
і натиснути "розхід" для конкретного типу ТМЦ
{{:whdoc9_2.png?800|}}
Усе виглядає доволі очевидно, чи не так? Добре б відповідально ставитися до "Призначення" розхідної операції. На поточний момент вони можуть бути такими:
{{:whdoc9_3.png|}}
Власне розхід ТМЦ можна зробити на незакрите завдання з "Планування робіт" **(це оптимальний і найкращий варіант!)**, повернути постачальнику з довідника "Постачальники", вашому працівникові - раптово з довідника "Працівники", також перемістити на інше складське приміщення, прив'язати до якогось наявного користувача за логіном, просто продати з рук, списати через непотрібність, або оформити як помилку, у разі, наприклад, якщо в приходах була вказана більша кількість ТМЦ, що надійшли, ніж у реальності. Слід також зауважити, що переміщення між складами реалізовано як створення додаткової прихідної операції, в якій постачальником фігуруватиме вихідне складське приміщення.
Ви завжди можете більш детально переглянути вже проведені прихідні та розхідні операції за допомогою контрола "Показати".
{{:whdoc10.png?800|}}
Також, за великого бажання, передбачена зручна генерація QR-кодів, щоб за видом ТМЦ можна було надалі визначити, звідки воно взялося, і що це взагалі таке.
{{:whdoc11.png?800|}}
Якщо ви не впевнені, на якому складському приміщенні перебувають ТМЦ, які ви хочете пустити в розхід, оформити розхідну операцією, або просто цікавитеся, скільки чого у вас є загалом - ви можете скористатися звітом "Залишки на складах".
{{:whdoc12.png?800|}}
І при великому бажанні, і наявності відповідних прав, прямо звідти оформити розхідну операцію
{{:whdoc12_1.png?800|}}
Також там можна переглянути всю історію прихідних і розхідних операцій у розрізі часу.
{{:whdoc13.png?800|}}
Ви можете отримувати нотифікацію, про вичерпання бажаного резерву конкретних ТМЦ на лицьовій сторінці модуля
{{:whdoc14.png?800|}}
Також можна фігурно розставити права адміністраторів, розділивши їхні обов'язки
{{:whdoc15.png|}}
Починаючи з Ubilling 0.7.1 з'явилася можливість бронювання ТМЦ на співробітників. Вона має пріоритет перед розхідними операціями і не дасть вам змоги видати одні й ті самі ТМЦ різним працівникам, або оформити їх як розхідну операцію, доки ці ТМЦ не знято з резерву на співробітника. Тобто якщо ви дали монтажникові Ігнатію зі складу "305м кручена пара" і невідомо, чи витратить він її всю, чи поверне назад - для цього логічно використовувати бронювання замість розхідної операції, поки він не поверне вам акт, де конкретно вказано, скільки і на яке завдання він її витратив. Далі цю кількість ви можете зняти з броні Ігнатія і пустити у розходи. За допомогою звіту "заброньовано" ви завжди можете дізнатися, які і скільки ТМЦ знаходиться на руках у ваших співробітників.
Також розхідні операції "пачками" можна, дуже зручно створювати прямо з задачі на яку їх було витрачено за допомогою контролу "Масовий розхід":
{{:whdoc17.png|}}
який перенесе вас до інтерфейсу створення масової розхідної операції для конкретної задачі
{{:whdoc17_1.png|}}
де вже буде заповнено вірні призначення для розходу, а також відображено заброньовані на виконавця задачі ТМЦ.
А як проводити інвентаризацію? Йдемо у "Розхідні операції", натискаємо на потрібне нам складське приміщення, бачимо які ТМЦ і в яких кількостях повинні залишатися на складі, за потреби натискаємо іконку з принтером, роздруковуємо, і йдемо з цим листочком на склад рахувати.
А загалом дивіться які ще симпатичні звіти бувають
{{:whdoc16.png?800|}}
====== Встановлення та налаштування ======
Для використання цієї функціональності потрібне ввімкнення опції **WAREHOUSE_ENABLED** у конфігурації [[alteriniconf|alter.ini]]. Для заливки зображень до типів ТМЦ потрібне ввімкнене сховище зображень **PHOTOSTORAGE_ENABLED**. Опція **WAREHOUSE_TELEGRAM** призводить до ввімкнення нотифікації ваших співробітників про здійснені на них операції бронювання за допомогою Telegram.
PHOTOSTORAGE_ENABLED=1
WAREHOUSE_ENABLED=1
WAREHOUSE_TELEGRAM=1
WAREHOUSE_RECPRICE=0
Для нотифікації ваших співробітників про заброньовані на них ТМЦ наприкінці дня, ви можете використати якийсь такий виклик із crontab -e:
30 19 * * * /bin/ubapi "warehousetelegram"
Це може допомогти їм не "губити" бухти кабелю у себе в машинах.
====== Очищення складу ======
Що робити, коли ви тестували модуль складу і вам треба було його очистити перед реальним використанням? Видалити складські приміщення, категорії ТМЦ і все інше? Для цього можете використовувати наступний скрипт у консолі розробника:
$dataTables=array(
'wh_storages',
'wh_reshist',
'wh_reserve',
'wh_out',
'wh_itemtypes',
'wh_in',
'wh_contractors',
'wh_categories'
);
if (!empty($dataTables)) {
foreach ($dataTables as $io => $each) {
$query='TRUNCATE TABLE `'.$each.'`';
nr_query($query);
log_register('WAREHOUSE FLUSH '.$each);
}
log_register('WAREHOUSE DESTROYED');
}
Видалення окремих прихідно-розхідних операцій, або "просто видалити" складське приміщення, не можливе, тому що вони всі досить глибоко взаємопов'язані та своїм виглядом забезпечують загальну цілісність даних. Тому очищення може бути тільки повним і безповоротним.