# Шаблон перевода для olaper. # Copyright (C) 2025 SERTY # Этот файл распространяется на условиях той же лицензии, что и проект PROJECT. # FIRST AUTHOR , 2025. # msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" "POT-Creation-Date: 2025-07-26 03:16+0300\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: Babel 2.17.0\n" #: app.py:46 msgid "Please log in to access this page." msgstr "Пожалуйста, войдите для доступа к этой странице." #: app.py:114 msgid "Invalid username or password" msgstr "Неверное имя пользователя или пароль" #: app.py:117 msgid "Login successful!" msgstr "Вход выполнен успешно!" #: app.py:130 msgid "Username and password are required." msgstr "Имя пользователя и пароль обязательны." #: app.py:133 msgid "Username already exists." msgstr "Имя пользователя уже существует." #: app.py:142 msgid "Registration successful! Please log in." msgstr "Регистрация успешна! Пожалуйста, войдите." #: app.py:148 msgid "An error occurred during registration. Please try again." msgstr "Произошла ошибка при регистрации. Пожалуйста, попробуйте снова." #: app.py:157 msgid "You have been logged out." msgstr "Вы вышли из системы." #: app.py:189 msgid "Password is required for the first time." msgstr "Пароль обязателен при первом подключении." #: app.py:193 msgid "Host and Login fields must be filled." msgstr "Поля Хост и Логин должны быть заполнены." #: app.py:211 #, python-format msgid "Successfully authorized on RMS server. Received %(num)s presets." msgstr "Успешная авторизация на сервере RMS. Получено %(num)s пресетов." #: app.py:214 msgid "Authorization error on RMS server. Check host, login or password." msgstr "Ошибка авторизации на сервере RMS. Проверьте хост, логин или пароль." #: app.py:219 #, python-format msgid "Error configuring RMS: %(error)s" msgstr "Ошибка настройки RMS: %(error)s" #: app.py:229 msgid "No file was selected." msgstr "Файл не был выбран." #: app.py:248 msgid "Could not find client_email in the credentials file." msgstr "Не удалось найти client_email в файле учетных данных." #: app.py:258 #, python-format msgid "Credentials file successfully uploaded. Email: %(email)s" msgstr "Файл учетных данных успешно загружен. Email: %(email)s" #: app.py:262 msgid "Error: Uploaded file is not a valid JSON." msgstr "Ошибка: Загруженный файл не является валидным JSON." #: app.py:267 #, python-format msgid "Error processing credentials: %(error)s" msgstr "Ошибка обработки учетных данных: %(error)s" #: app.py:282 msgid "Sheet URL must be provided." msgstr "Необходимо указать URL таблицы." #: app.py:289 msgid "Please upload a valid credentials file first." msgstr "Пожалуйста, сначала загрузите валидный файл учетных данных." #: app.py:300 #, python-format msgid "" "Successfully connected to Google Sheets. Found %(num)s sheets. Settings " "saved." msgstr "Успешное подключение к Google Таблицам. Найдено %(num)s листов. Настройки сохранены." #: app.py:307 #, python-format msgid "" "Error connecting to Google Sheets: %(error)s. Check the URL and service " "account permissions." msgstr "Ошибка подключения к Google Таблицам: %(error)s. Проверьте URL и права сервисного аккаунта." #: app.py:333 msgid "Mappings updated successfully." msgstr "Привязки успешно обновлены." #: app.py:338 #, python-format msgid "Error updating mappings: %(error)s" msgstr "Ошибка обновления привязок: %(error)s" #: app.py:354 msgid "Error: Could not determine which sheet to render the report for." msgstr "Ошибка: Не удалось определить, на какой лист выводить отчет." #: app.py:361 #, python-format msgid "Error: No report is assigned to sheet \"%(sheet)s\"." msgstr "Ошибка: Нет отчета, привязанного к листу \"%(sheet)s\"." #: app.py:366 msgid "Error: RMS or Google Sheets configuration is incomplete." msgstr "Ошибка: Настройка RMS или Google Таблиц не завершена." #: app.py:371 #, python-format msgid "Error: Preset with ID \"%(id)s\" not found in saved configuration." msgstr "Ошибка: Пресет с ID \"%(id)s\" не найден в сохраненной конфигурации." #: app.py:387 #, python-format msgid "Error: Unexpected response format from RMS for report \"%(name)s\"." msgstr "Ошибка: Неожиданный формат ответа от RMS для отчета \"%(name)s\"." #: app.py:400 #, python-format msgid "Report \"%(name)s\" data successfully written to sheet \"%(sheet)s\"." msgstr "Данные отчета \"%(name)s\" успешно записаны на лист \"%(sheet)s\"." #: app.py:402 #, python-format msgid "" "Report \"%(name)s\" returned no data for the selected period. Sheet " "\"%(sheet)s\" has been cleared." msgstr "Отчет \"%(name)s\" не вернул данных за выбранный период. Лист \"%(sheet)s\" был очищен." #: app.py:404 msgid "Error authorizing on RMS server when trying to get a report." msgstr "Ошибка авторизации на сервере RMS при попытке получить отчет." #: app.py:407 #, python-format msgid "Data Error: %(error)s" msgstr "Ошибка данных: %(error)s" #: app.py:410 #, python-format msgid "" "Google API Error accessing sheet \"%(sheet)s\". Check service account " "permissions." msgstr "Ошибка Google API при доступе к листу \"%(sheet)s\". Проверьте права сервисного аккаунта." #: app.py:413 #, python-format msgid "An unexpected error occurred: %(error)s" msgstr "Произошла непредвиденная ошибка: %(error)s" #: templates/index.html:6 msgid "MyHoreca OLAPer" msgstr "MyHoreca OLAPer" #: templates/index.html:11 msgid "MyHoreca OLAP-to-GoogleSheets" msgstr "MyHoreca OLAP в Google Таблицы" #: templates/index.html:15 msgid "Logged in as:" msgstr "Вход выполнен как:" #: templates/index.html:16 msgid "Logout" msgstr "Выйти" #: templates/index.html:18 msgid "Русский" msgstr "Русский" #: templates/index.html:19 msgid "English" msgstr "English" #: templates/index.html:24 templates/login.html:4 templates/login.html:13 #: templates/login.html:29 msgid "Login" msgstr "Вход" #: templates/index.html:25 templates/register.html:4 templates/register.html:13 #: templates/register.html:26 msgid "Register" msgstr "Регистрация" #: templates/index.html:41 msgid "Connection to RMS-server" msgstr "Подключение к RMS-серверу" #: templates/index.html:43 msgid "RMS Server Configuration" msgstr "Настройка RMS сервера" #: templates/index.html:45 msgid "" "Enter the details for your RMS server API. This information is used to " "connect,\n" " authenticate, and retrieve the list of available OLAP report " "presets." msgstr "" "Введите данные для API вашего RMS сервера. Эта информация используется для " "подключения,\n" " аутентификации и получения списка доступных пресетов OLAP отчетов." #: templates/index.html:49 msgid "RMS-host (e.g., http://your-rms-api.com/resto):" msgstr "RMS-хост (например, http://your-rms-api.com/resto):" #: templates/index.html:52 msgid "API Login:" msgstr "API Логин:" #: templates/index.html:55 msgid "API Password:" msgstr "API Пароль:" #: templates/index.html:58 msgid "Password is saved. Enter a new one only if you need to change it." msgstr "Пароль сохранен. Введите новый только если нужно его изменить." #: templates/index.html:60 msgid "Enter the API password for your RMS server." msgstr "Введите API пароль для вашего RMS сервера." #: templates/index.html:63 msgid "Check and Save RMS-config" msgstr "Проверить и сохранить RMS-конфиг" #: templates/index.html:66 templates/index.html:68 templates/index.html:116 #: templates/index.html:118 msgid "Status:" msgstr "Статус:" #: templates/index.html:66 #, python-format msgid "Successfully connected to RMS. Found %(num)s OLAP presets." msgstr "Успешное подключение к RMS. Найдено %(num)s OLAP пресетов." #: templates/index.html:68 msgid "RMS configuration saved. Presets not yet loaded or connection failed." msgstr "Конфигурация RMS сохранена. Пресеты еще не загружены или подключение не удалось." #: templates/index.html:73 msgid "Configure RMS first" msgstr "Сначала настройте RMS" #: templates/index.html:74 templates/index.html:77 msgid "Google Sheets Configuration" msgstr "Настройка Google Таблиц" #: templates/index.html:79 msgid "" "To allow the application to write to your Google Sheet, you need to " "provide\n" " credentials for a Google Service Account. This account will act" " on behalf\n" " of the application." msgstr "" "Чтобы разрешить приложению запись в вашу Google Таблицу, необходимо " "предоставить\n" " учетные данные Google Service Account. Этот аккаунт будет " "действовать\n" " от имени приложения." #: templates/index.html:84 msgid "How to get credentials:" msgstr "Как получить учетные данные:" #: templates/index.html:85 msgid "Go to Google Cloud Console." msgstr "Перейдите в Google Cloud Console." #: templates/index.html:86 msgid "Create a new project or select an existing one." msgstr "Создайте новый проект или выберите существующий." #: templates/index.html:87 msgid "Enable the \"Google Sheets API\" and \"Google Drive API\" for the project." msgstr "Включите \"Google Sheets API\" и \"Google Drive API\" для проекта." #: templates/index.html:88 msgid "" "Go to \"Credentials\", click \"Create Credentials\", choose \"Service " "Account\"." msgstr "" "Перейдите в \"Credentials\", нажмите \"Create Credentials\", выберите " "\"Service Account\"." #: templates/index.html:89 msgid "Give it a name and grant it the \"Editor\" role." msgstr "Дайте ему имя и назначьте роль \"Editor\"." #: templates/index.html:90 msgid "Create a JSON key for the service account and download the file." msgstr "Создайте JSON ключ для сервисного аккаунта и скачайте файл." #: templates/index.html:91 msgid "" "Share your target Google Sheet with the service account's email address " "(found in the downloaded JSON file, key `client_email`)." msgstr "" "Откройте доступ к вашей Google Таблице для email сервисного аккаунта " "(указан в скачанном JSON файле, ключ `client_email`)." #: templates/index.html:94 msgid "Service Account Credentials (JSON file):" msgstr "Учетные данные сервисного аккаунта (JSON файл):" #: templates/index.html:97 msgid "Current Service Account Email:" msgstr "Текущий Email сервисного аккаунта:" #: templates/index.html:98 msgid "Upload a new file only if you need to change credentials." msgstr "Загружайте новый файл только если нужно изменить учетные данные." #: templates/index.html:100 msgid "Upload the JSON file downloaded from Google Cloud Console." msgstr "Загрузите JSON файл, скачанный из Google Cloud Console." #: templates/index.html:102 msgid "Upload Credentials" msgstr "Загрузить учетные данные" #: templates/index.html:106 msgid "" "Enter the URL of the Google Sheet you want to use. The service account " "email\n" " (shown above after uploading credentials) must have edit " "access to this sheet." msgstr "" "Введите URL Google Таблицы, которую вы хотите использовать. Email " "сервисного аккаунта\n" " (показан выше после загрузки учетных данных) должен иметь " "права на редактирование этой таблицы." #: templates/index.html:110 msgid "Google Sheet URL:" msgstr "URL Google Таблицы:" #: templates/index.html:112 msgid "Upload Service Account Credentials first" msgstr "Сначала загрузите учетные данные сервисного аккаунта" #: templates/index.html:113 msgid "Connect Google Sheets" msgstr "Подключить Google Таблицы" #: templates/index.html:116 #, python-format msgid "Successfully connected to Google Sheet. Found %(num)s worksheets." msgstr "Успешное подключение к Google Таблице. Найдено %(num)s листов." #: templates/index.html:118 msgid "Google Sheet URL saved. Worksheets not yet loaded or connection failed." msgstr "URL Google Таблицы сохранен. Листы еще не загружены или подключение не удалось." #: templates/index.html:124 msgid "Configure RMS and Google Sheets first" msgstr "Сначала настройте RMS и Google Таблицы" #: templates/index.html:125 msgid "Mapping Sheets to OLAP Reports" msgstr "Привязка листов к OLAP отчетам" #: templates/index.html:128 msgid "Map Worksheets to OLAP Reports" msgstr "Сопоставить листы с OLAP отчетами" #: templates/index.html:130 msgid "" "Select which OLAP report from RMS should be rendered into each specific " "worksheet\n" " (tab) in your Google Sheet." msgstr "" "Выберите, какой OLAP отчет из RMS должен выводиться на каждый конкретный " "лист\n" " (вкладку) в вашей Google Таблице." #: templates/index.html:138 msgid "Worksheet (Google Sheets)" msgstr "Лист (Google Таблицы)" #: templates/index.html:139 msgid "OLAP-report (RMS)" msgstr "OLAP-отчет (RMS)" #: templates/index.html:148 msgid "Not set" msgstr "Не задано" #: templates/index.html:160 msgid "Save Mappings" msgstr "Сохранить привязки" #: templates/index.html:163 msgid "" "Worksheets and OLAP presets are not loaded. Please configure RMS and " "Google Sheets first." msgstr "" "Листы и OLAP пресеты не загружены. Пожалуйста, сначала настройте RMS и " "Google Таблицы." #: templates/index.html:165 msgid "Worksheets are not loaded. Check Google Sheets configuration." msgstr "Листы не загружены. Проверьте настройку Google Таблиц." #: templates/index.html:167 msgid "OLAP presets are not loaded. Check RMS configuration." msgstr "OLAP пресеты не загружены. Проверьте настройку RMS." #: templates/index.html:172 msgid "Configure Mappings first" msgstr "Сначала настройте привязки" #: templates/index.html:173 msgid "Render Reports to Sheets" msgstr "Вывод отчетов в листы" #: templates/index.html:176 msgid "Render Reports" msgstr "Сформировать отчеты" #: templates/index.html:178 msgid "" "Select the date range and click \"Render to sheet\" for each mapping you " "wish to execute.\n" " The application will retrieve the OLAP data from RMS for the " "selected report and period,\n" " clear the corresponding worksheet in Google Sheets, and write " "the new data." msgstr "" "Выберите диапазон дат и нажмите \"Вывести на лист\" для каждой привязки, " "которую хотите выполнить.\n" " Приложение получит OLAP данные из RMS для выбранного отчета и " "периода,\n" " очистит соответствующий лист в Google Таблицах и запишет новые " "данные." #: templates/index.html:184 msgid "From Date:" msgstr "С даты:" #: templates/index.html:187 msgid "To Date:" msgstr "По дату:" #: templates/index.html:193 msgid "Worksheet" msgstr "Лист" #: templates/index.html:194 msgid "Mapped OLAP Report" msgstr "Привязанный OLAP отчет" #: templates/index.html:195 msgid "Action" msgstr "Действие" #: templates/index.html:203 msgid "ID: " msgstr "ID: " #: templates/index.html:206 msgid "Unnamed Preset" msgstr "Безымянный пресет" #: templates/index.html:214 msgid "Render to sheet" msgstr "Вывести на лист" #: templates/index.html:224 msgid "No mappings configured yet." msgstr "Привязки еще не настроены." #: templates/index.html:225 msgid "" "Please go to the \"Mapping Sheets to OLAP Reports\" section (Step 3) to " "set up mappings." msgstr "" "Пожалуйста, перейдите в раздел \"Привязка листов к OLAP отчетам\" (Шаг " "3) для настройки привязок." #: templates/index.html:248 msgid "Please," msgstr "Пожалуйста," #: templates/index.html:248 msgid "login" msgstr "войдите" #: templates/index.html:248 msgid "or" msgstr "или" #: templates/index.html:248 msgid "register" msgstr "зарегистрируйтесь" #: templates/login.html:22 templates/register.html:22 msgid "Username:" msgstr "Имя пользователя:" #: templates/login.html:24 templates/register.html:24 msgid "Password:" msgstr "Пароль:" #: templates/login.html:27 msgid "Remember Me" msgstr "Запомнить меня" #: templates/login.html:31 msgid "Don't have an account?" msgstr "Нет аккаунта?" #: templates/login.html:31 msgid "Register here" msgstr "Зарегистрируйтесь здесь" #: templates/register.html:28 msgid "Already have an account?" msgstr "Уже есть аккаунт?" #: templates/register.html:28 msgid "Login here" msgstr "Войдите здесь"