Предложило мне тут приложение HH оставить отзывы о работодателях, у которых пришлось в своё время поработать. Попытался оставить. Как итог: положительные отзывы публикуются моментально. Отрицательные — вот уже пару недель пытаюсь опубликовать, и все не проходят модерацию. Но я упорный. всё время меняю формулировки.. надеюсь кому то из модераторов надоест уже это и нажмут кнопку «пропустить».
P.S. Ну собственно это и ожидаемо, полистал несколько «работодателей» — плохих отзывов нет. Хотя точно знаю, что компания шлак.
Как то упустил эту возможность платформы 1С и никогда ранее не использовал. А тут вдруг прилетела задача поработать файлами большого размера (xlsx, csv), на основании данных в которых нужно строить различного вида отчёты. Пришла мысль: а почему бы не загрузить данные этих файлов в БД, а затем уже спокойно стоить на основании этих данных отчёты. Какие-то регистры, справочники и т.п. создавать в конфигурации для этого посчитал излишним. Самое правильное, подумал я, хранить всё вообще в какой-то сторонней базе (в моём случае в PostgreSQL). А 1С использовать только для вывода и формирования отчётов. Вот тут то я и вспомнил, что когда то мельком читал про «внешние источники данных» в 1С. Значит пришло время попробовать хранение информации во внешних источниках данных.
Сначала создам БД, с таблицами ls и shemes со структурой вида::
, где id — автоинкримент типа integer. Забегая вперед, следует отметить, что 1С не умеет при добавлении данных во внешние источники данных, передавать инкрементальное значение, а потому создадим триггер, который будет выполнятся перед транзакцией запроса INSERT, и заменяет значение id, на следующее по порядку:
Подготовка закончена. Теперь подготовим платформу 1С. А именно необходимо установить драйвер ODBC. Под Linux ставим из репозитария, под Windows скачиваем и устанавливаем отсюда: https://www.postgresql.org/ftp/odbc/releases/REL-16_00_0005-mimalloc/
Далее необходимо зайти в конфигуратор 1С и добавить новый источник данных и таблицу в нём. При создании таблицы, необходимо выбрать «Выбрать из списка таблиц внешнего источника данных», и построить строку соединения с БД, вида:
После чего, будут доступны для добавления в конфигуратор таблицы БД:
После того как нажмем «Готово», в конфигураторе будет что-то вроде:
Далее остаётся научится читать,писать и удалять эти данные:
Ранее уже делал подобную схему, но вышло слишком дорого и сложно. Поэтому реле времени своими руками буду упрощать и удешевлять 😉 Во первых уберем индикатор, соответственно сдвиговый регистр будет не нужен. Из индикации добавим светодиод, который будет показывать включено или выключено реле. Так-же подумав, решил добавить кнопку ручного включения/выключения реле. Сердцем будет микросхема attiny85. Так-же в схему добавил и блок питания (HLK-PM01), чтоб вся конструкция была единой платой
Хм..однако. Попробовал новую нейросеть для сочинения музыки и накладывания слов на мотив музыки. И был удивлён. Прогресс очевиден, и музыка и песни получающиеся действительно пригодны для прослушивания.
Опрос клавиатуры при помощи curses несколько запутан. Во первых есть способ получить одиночное нажатие кнопки при помощи:
1
res=stdscr.getkey()
В этом случае в res попадёт непосредственно сам символ в виде строки.
Второй способ — использование :
1
res=stdscr.getch()
В этом случае в res попадет число вида int — код нажатой кнопки. Однако оба способа не работают, когда нужно получить данные о нажатой специальной клавиши, типа стрелок, F1..F12 и т.д. Если необходимо их получить, то нужно сначала включить данную возможность:
1
stdscr.keypad(True)
Зачем так сделано, загадка. Почему нельзя получить эти данные сразу?
Так-же есть способ отключить ожидание нажатия кнопки, при помощи:
1
curses.cbreak()
Итог: задача «Опрос клавиатуры при помощи curses» выполнена. Можете почитать и другие заметки посвященные Python. Официальная документация на curses здесь