4.9 KiB
4.9 KiB
Changelog
[2025-11-05] - Формат 1С EnterpriseData 1.20
Added
- 🆕 Формат 1С EnterpriseData 1.20 - новый генератор XML для прямой загрузки документов реализации в конфигурации 1С
- 📄 Класс
XML1CGeneratorвmodules/xml_generator.pyдля генерации документов в формате обмена 1С - 📖 Документация по формату 1С:
docs/XML_1C_FORMAT.md - ✨ Поддержка UUID, ISO 8601 дат, сумм в рублях (без копеек)
- 🏢 Корректная обработка ИП и юридических лиц в формате 1С
- 💼 Экспорт банковских реквизитов организации
- 📦 Детализация товарных позиций с кодами ОКЕИ
- 🔄 Полная структура документа "Реализация товаров и услуг" для 1С
Changed
- 📝 Обновлен README с информацией о новом формате
- 🔄 Сохранены оба формата: ВерсФорм 5.03 (для ФНС) и 1С EnterpriseData 1.20 (для 1С)
Technical Details
- Namespace:
http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.20 - Формат даты: ISO 8601 (YYYY-MM-DDTHH:MM:SS)
- Денежные суммы: рубли (целое число)
- UUID для всех ссылок на объекты
- Полная интеграция с API МойСклад
Обновление бота - Поиск заказов
✅ Исправлено
- Проблема с командой /orders - добавлено детальное логирование и обработка ошибок
- Глобальный обработчик ошибок - все ошибки теперь логируются и пользователь получает понятное сообщение
🆕 Новые возможности
Команда поиска заказа по номеру
Теперь вы можете искать заказы по номеру командой /search
Использование:
/search 00001
/search СЧ-123
/search Заказ
Как работает:
- Отправьте команду
/searchс номером заказа - Бот найдет все подходящие заказы в МойСклад
- Выберите нужный заказ из списка результатов
- Далее работа идет как обычно: выбор типа документа и формата
📋 Обновленные команды
/start- Приветствие и описание бота/orders- Показать последние 10 заказов/search <номер>- НОВОЕ! Найти заказ по номеру/help- Справка по командам
🔍 Примеры использования
Просмотр последних заказов:
/orders
Поиск конкретного заказа:
/search 00042
Поиск по части номера:
/search СЧ-2024
🛠️ Технические улучшения
- Детальное логирование - теперь все действия логируются для отладки
- Обработка исключений - добавлены try-catch блоки для всех критических операций
- Глобальный error_handler - перехватывает все необработанные ошибки
- Информативные сообщения - пользователь получает понятные сообщения об ошибках
🚀 Запуск
После обновления просто перезапустите бота:
python main.py
Бот автоматически:
- Проверит подключение к МойСклад
- Проверит токен Telegram
- Запустит все обработчики
📝 Логи
Теперь в логах вы увидите:
- Какой пользователь отправил команду
- Сколько заказов найдено
- Детали всех ошибок с трассировкой
Пример лога:
INFO - Команда /orders от пользователя 123456789
INFO - Запрос к API МойСклад...
INFO - Получено заказов: 10
⚠️ Примечания
- Поиск работает по частичному совпадению (можно искать часть номера)
- Максимум показывается 10 результатов поиска
- Если заказ не найден, бот предложит использовать /orders