Вход

Просмотр полной версии : Методика хранения данных у меня в производстве (актуально после взлома ОВЕН 08.04.24)



Cs-Cs
08.04.2024, 22:00
Камрады! После сегодняшнего взлома ОВЕНа, когда форум уже подняли, в некоторых темах проскочили разные сарказмы (о том, что ОВЕН упустили момент) и ругань (о том, что ОВЕН всех подвёл и/или подведёт, если слетит конфигурация OwenCloud). А кто-то вообще писал о том, что хотел почитать инструкции на оборудование с сайта, а сайт не работает.
Мне хочется поделиться своими налаженными решениями на этот счёт, так как я несколько раз достаточно жёстко и сильно заявляю о тезисах, касающихся того, что плох тот АСУТПшник, который не ведёт учёт (и криво именует переменные в программе). Пусть это будет мой опыт в формате мини-статьи на форуме.
ВАЖНО: Это НЕ реклама моей базы данных (она на базе старой 1С.7.7 и её не продать). Я рассказываю о МЕТОДИКАХ, а не о базе.


Также напоминаю: ОЦЕНИВАЙТЕ ВСЕ РИСКИ. Умейте считать Стоимость Владения (это цена продажи + стоимость обслуживания + стоимость ремонта ++ стоимость доработок + стоимость простоев из-за сбоев). ОВЕН - недорогой. Но бездумно применять его без таких оценок и потом винить ОВЕН - плохо. Надо прежде винить себя. За плохой учёт и расчёты.
И, да - эти же принципы можно применить и на другие сферы жизни. Даже на быт.

1. Почему учёт важен и зачем он нужен. Что входит в учёт.
К учёту я пришёл не так просто, и, как многие, сопротивлялся ему и думал по разному:
а) Мой бизнес - мелкий, фиг ли играть в заводы, и так справлюсь
б) Некогда - ща быстро возьму и запасов, сделаю, потом докуплю
Постепенно это приводило к тому, что я начал забывать кому что делал и когда и по каким ценам, забывать о том, где и сколько и чего лежит на складе или в запасе (и иногда покупал расходники по два раза). Ещё многим руководила лень: я искал решения, чтобы не перерисовывать разные таблички из документации на проекты руками, если нужно было их изменить. Или чтобы учёт автоматически говорил, что такой-то расходник кончается и его надо заказать.
Моей системе много лет (15 в этом году, ахаха), и она написана на базе старой 1С 7.7. Достоинство 1Ски в том, что она позволяет легко создавать экранные формы и объекты, а код, который надо писать - только для события "Создать" (для "Изменить" и "Удалить" 1Ска делает всё сама автоматически), что выгодно отличает её от решений на базе WEBа.
Вести учёт может (и должен) каждый. Дело не в том, в какой программе или среде его вести, а в том, чтобы приучиться это делать.
Я считаю, что основной метод для приучения себя к учёту - это пойти от обратного. От выражения "Чисто не там, где убирают, а где не сорят". Я трактую его так: нужно не ломать себя ради какой-то программы или новых правил, а создать такие правила или программу, которые будут вписываться в уже привычный уклад жизни или рабочего процесса.
Например, мы все настраиваем датчики или модули ввода-вывода по Modbus. И нам нужно сохранить эти настройки (и даже иногда отразить их в документации на проект). Если вы привыкли всё настраивать и скорее запускать в работу, а тут приду условный я и скажу "Нее! Сначала всё запиши", то вы меня отругаете. И будете правы. Я вижу эту ситуацию по другому: перед тем, как что-то настраивать, мы составляем табличку настроек, а потом по ней всё и настраиваем. То есть идём от исходной документации. Тогда и не надо будет лениться её составлять (табличка уже есть), и не надо будет суетиться при настройках (настраиваем по табличке).
Таким образом и развивалась моя методика учёта и работы с данными: сначала создаём данные, а потом по ним же и работаем. Тогда легко удаётся избежать пресловутого "Блин, да я уже проект сделал и сдал, а тут ещё чего-то заполнять, описывать - нафиг надо, лишняя работа". Короче, данные нужно хранить так, чтобы это было удобно и читаемо, и самим же нужно для работы. Именно этот концепт мне и зашёл.
Что входит в учёт по моему мнению?
* Клиенты: их Контакты, Адреса, история статусов (обратился, отказался, в работе, сдан) с комментариями. Чтобы, если клиент обращается через года два, можно было его найти и вспомнить что-то типа "Выносил мозги и дешевил" в статусе =)
* Товары (номенклатура). Это материалы, расходники и само оборудование. Удобно знать, сколько и чего и где у тебя лежит и когда оно покупалось. Благодаря этому можно спланировать заказ расходников или легко найти счёт, документ, номер заказа, дату и название фирмы, у которой это покупали. Тем более что это нужно для обращения в сервис ОВЕНа.
* Договоры и Акты. У меня лежат все их исходники. У меня они хранятся прямо в базе, но их можно хранить в папках на компе, структурируя их по номеру заказа или названию клиента/проекта.
* Настройки оборудования (это то, что я сделал недавно): Modbus-адреса и параметры связи, настройки разных конфигураций, заводские номера, история покупки, запуска, ремонта, продажи и так далее.
* Медиаконтент для тех, кто ведёт СоцСети - исходники описаний постов, видео и прочего контента в СоцСетях. Это удобно для репоста или на те случаи, если СоцСеть или аккаунт в неё грохнут. И опять же удобно: сначала создал контент, а потом его копируешь куда надо.
Что даёт мне этот учёт?
* Быстрый доступ к данным. По телефону или мылу я сразу и клиента найду, и вспомню то, когда и что я ему делал и по каким ценам и на каком оборудовании.
* Историю всех заказов по их номерам, накладным, счетам.
* Можно быстро узнать, что и сколько есть на складах. Или что заказано и по какому заказу.
* Можно быстро найти устройство по Договору, Клиенту или Серийному номеру и поднять его настройки, паспорт или другие данные.
Почему я хочу, чтобы вы брали это всё на вооружение?
* Постепенно проблемы растут как снежый ком: ни фига не помнишь, теряешь инфу, а начинать разгребать и приводить в порядок это сложнее, чем сразу нормально делать.
* Такие случаи как сегодня: данные, на которые ты надеялся, недоступны, а взять негде.
* Облегчение жизни: не надо ничего помнить, можно открыть и посмотреть историю заказа.
* Облегчение разборок и выяснений вида "А кто покупал? Да вот же был заказ", "Как это я покупал? Нет, вот пометка: получено от заказчика тогда-то". Ведь точно же у каждого был случай, когда надо было вспомнить и доказать что ты не крайний и тебя подставляют.

2. Учёт товаров и их характеристик.
У меня все товары хранятся в справочнике. У них есть заводской артикул (точная модель, а не "Модуль ввода-вывода на 16 входов с Modbus"), цена, статус складского наличия и куча других свойств.
75041

Можно быстро глянуть наличие на складах. Вот тут мои запасы есть - две штуки. Личные =)
75042

У товара есть свойства. Можно, не заглядывая в инструкцию, быстро узнать самое необходимое. Например, количество модулей на DIN-рейке и потребляемую мощность питания.
75043

А самое главное - к товару есть вложения. И у меня дома, на компьютере, хранятся все локальные копии всех инструкций, чертежей и фотографий. И я могу их легко открыть, не лазая на сайт ОВЕНа.
75044

3. Учёт контента в СоцСетях (и личного).
Эта придумка новая. Она задумана для хранения исходников постов для моего будущего канала в ТГ и для текущих каналов на Ютубе.
Смысл - хранить исходники информации о видео/посте для репостов. Или если грохнут канал.
75045

4. Учёт оборудования и устройств.
Это тоже новое. Я писал про это на форуме ОВЕНа у нас тут: https://owen.ru/forum/showthread.php?t=38659
Сейчас я уже привык к этой системе и удивляюсь, как не сделал раньше.
Устройства рассортированы по папкам, проектам и заказам. В списке есть их характеристики.
75046

Для каждого устройства можно хранить его настройки. В том числе в вольном формате "Регистр (Параметр) = Значение".
75047

И, конечно, историю статусов. Для обращения в Сервис или для самого же себя вида "...Хм... мда, брак: ставил полгода назад только" =)
75049

5. Резервное копирование проектов и данных.
А это - самое-самое-самое важное!
Всегда делайте резервные копии с сохранением предыдущих данных! Посмотрите на мои задачи резервирования:
75048

Тут резервируются и база 1Ски, и сайт, и сами проекты-заказы. И резервирование я запускаю после каждого более-менее важного изменения проекта. Написал новый FB - копия! Сделал экран визуализации - копия! Написал кусок кода - копия!
На мой взгляд важно автоматизировать такое копирование, потому что если бы мне каждый раз надо было бы копировать проект руками - я бы сильно ругался и не делал этого.

Готов ответить на все вопросы и поделиться опытом, если кому надо.
Ребята, камрады! Подтягивайте свой уровень! Это надо вам же самим: вы упростите себе жизнь, станете меньше напрягать мозги на рутину и больше заниматься приятной работой.

Cs-Cs
11.04.2024, 11:47
ОЙ! Почему-то тут остались только картинки, а текста - нет. Скорее всего это последствия восстановления ОВЕНского форума после взлома.
У меня была резервная копия. Вставил текст как должно было быть! Теперь можно читать!

Валерий "mad Dog" Шмараев Вот ща есть текст. Теперь можно читать.
Нет, у меня наоборот: локальная база с документацией и настройками.

BETEP
11.04.2024, 13:38
Добавь пожалуйста в голосование пункт:
"Достал уже со своим учётом"

SlavikP
12.04.2024, 05:37
Добавь пожалуйста в голосование пункт:
"Учет веду не я, а специально обученный человек"

and909
12.04.2024, 06:30
Использую автоматическое резервное копирование (ежедневно в конце рабочего дня) папки с проектами на локальный сервер плюс на 2 облака: Мэйл и Яндекс.
Веду учет остатков оборудования для ЗИП и внезапных проектов.
Про остальное описанное автором: вроде и хорошо и нужно, но лень.

Cs-Cs
12.04.2024, 09:22
BETEP О, да! Я достану всех. Потому что те, кто работает без культуры кода, без учёта проектов и данных - ни фига не спецы и не АСТУПшники. Заявляю прям ка новый Земсков, который заявлял что без нормальной рабочий одежды специалист - не специалист =)
На деле всё это серьёзно: все орут про то, как у них всё глюкануло и отвалилось, но чего-то из них почти никто не делает резервные копии, не хранит настройки оборудования. А потом локти кусают.

SlavikP Чёрт. Не могу этот опрос отредактировать. Я его просто так вставил. Можно выбрать или то, что учёт ведётся, или забить фиг.

and909 Здорово! Отлично!
Если лень - то, возможно, учёт настроек и не надо вести?
Ты часто применяешь оборудование, для которого надо хранить настройки (модули IO, ПРки, ТРМы)? Может, проще будет хоть файлы конфигурации от них хранить?

and909
12.04.2024, 09:41
Может, проще будет хоть файлы конфигурации от них хранить?
На каждый проект заводится своя папочка, куда складываются все документы: мануалы итд, потом ТЗ, потом все файлы (проекты, настройки), потом Инструкции по эксплуатации.
Отдельно главный инженер на новую единицу оборудования заводит бумажную папку с бумажной документацией. Если программа позволяет, делаю распечатку программы или настроек (к сожалению не все программы позволяют сохранить проект в бумажном виде).

Cs-Cs
12.04.2024, 14:22
and909 И всё это автоматически бэкапится? Отлично!
Кстати. А как называются папочки по проектам? У меня у каждого проекта есть уникальный ID из двухбуквенного префикса (тип проекта) и номера. Я по нему папочки называю (раньше не называл, надо старые переименовать сесть).

Валерий "mad Dog" Шмараев Сожалею, но мы не про облака, а про методику того, как сделать так, чтобы при сбоях или крахах легче было всё восстановить.

CleanS
12.04.2024, 21:03
Почитал. Да, есть к чему стремиться.
На одной из былых работ специально, на Delphi, писал прогу по учёту и движению оборудования, с интегрированной клиентской базой. Было удобно.
Сейчас всё локально, на компе. Каждый проект это папка, внутри папка с спецификацией на оборудование, папка с проектом OL или CDS. Папка с бух. документами (счета и УПД и пр.).
Копирования к сожалению не делаю. Если "винт" на компе навернётся, то всё... писец.

melky
13.04.2024, 08:57
BETEP О, да! Я достану всех. Потому что те, кто работает без культуры кода, без учёта проектов и данных - ни фига не спецы и не АСТУПшники. Заявляю прям ка новый Земсков, который заявлял что без нормальной рабочий одежды специалист - не специалист =)
На деле всё это серьёзно: все орут про то, как у них всё глюкануло и отвалилось, но чего-то из них почти никто не делает резервные копии, не хранит настройки оборудования. А потом локти кусают.

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

BETEP
13.04.2024, 10:10
.........
Копирования к сожалению не делаю. Если "винт" на компе навернётся, то всё... писец.
Не ленись. В конце дня можно запустить скрипт, который заархивирует всё что нужно и выключит комп.

rem @echo off

SET DIRNAME=Z:\Archive

ECHO Запуск винрара для архивирования библиотеки ВИНТЕКА
start /wait WinRAR.exe U -as -Y D:\01_temp\EB8000\EBprolibrary.rar C:\EBpro\library

ECHO Архив скады базальта
start /wait WinRAR.exe U -as -Y D:\01_temp\+Базальт+\=new\SCADA\SCADA.rar C:\SCADA


ECHO Архивирование D:\01_temp

SET FILENAME=01_temp
SET RARNAME=D:\01_temp

call %DIRNAME%\Arc
ECHO Архивирование D:\Visio
SET FILENAME=Visio
SET RARNAME=D:\Visio

call %DIRNAME%\Arc

shutdown.exe -s -f
Arc.cmd

rem echo off

del %DIRNAME%\%FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%_16.rar %FILENAME%_old.rar
ren %DIRNAME%\%FILENAME%_15.rar %FILENAME%_16.rar
ren %DIRNAME%\%FILENAME%_14.rar %FILENAME%_15.rar
ren %DIRNAME%\%FILENAME%_13.rar %FILENAME%_14.rar
ren %DIRNAME%\%FILENAME%_12.rar %FILENAME%_13.rar
ren %DIRNAME%\%FILENAME%_11.rar %FILENAME%_12.rar
ren %DIRNAME%\%FILENAME%_10.rar %FILENAME%_11.rar
ren %DIRNAME%\%FILENAME%_9.rar %FILENAME%_10.rar
ren %DIRNAME%\%FILENAME%_8.rar %FILENAME%_9.rar
ren %DIRNAME%\%FILENAME%_7.rar %FILENAME%_8.rar
ren %DIRNAME%\%FILENAME%_6.rar %FILENAME%_7.rar
ren %DIRNAME%\%FILENAME%_5.rar %FILENAME%_6.rar
ren %DIRNAME%\%FILENAME%_4.rar %FILENAME%_5.rar
ren %DIRNAME%\%FILENAME%_3.rar %FILENAME%_4.rar
ren %DIRNAME%\%FILENAME%_2.rar %FILENAME%_3.rar
ren %DIRNAME%\%FILENAME%_1.rar %FILENAME%_2.rar
ren %DIRNAME%\%FILENAME%_new.rar %FILENAME%_1.rar

ECHO Запуск винрара для архивирования %RARNAME%

start /wait WinRAR.exe A -Y -rr3p %DIRNAME%\%FILENAME%_tmp.rar %RARNAME%

start /wait WinRAR.exe T %DIRNAME%\%FILENAME%_tmp.rar
ren %DIRNAME%\%FILENAME%_tmp.rar %FILENAME%_new.rar
Как вариант, можно скрывать диск с архивами на компе, чтобы его ни один вирус не смог найти.
C:\Windows\SysWOW64\devcon.exe enable "IDE\DiskST500LT012-1DG142_______________________0001SDM1"
pause
C:\Windows\SysWOW64\devcon.exe disable "IDE\DiskST500LT012-1DG142_______________________0001SDM1"

Stentor
13.04.2024, 11:08
бездельник, работающий по принципу, бери больше, кидай дальше, пока летит, отдыхай.
"Бери больше, кидай дальше. Пока летит, перекуривай" - так говорят про тяжёлый физический труд.

CleanS
13.04.2024, 14:53
Не ленись. В конце дня можно запустить скрипт, который заархивирует всё что нужно и выключит комп.
[PHP]rem @echo off

.....

Спасибо!
Не, у меня есть внешний HDD. Сильно эпизодически я его синхронизирую с основным "винтом", для актуализации данных. Так что совсем "без штанов" не останусь))