<?xml version="1.0" encoding="UTF-8"?>
<!--

    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
-->
<resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd">
    <property key="simpleMethod.error_begin_transaction">
        <value xml:lang="de">Fehler beim Starten der Transaktion, Methode konnte nicht verarbeitet werden</value>
        <value xml:lang="en">Error trying to begin transaction, could not process method</value>
        <value xml:lang="es">Error trying to begin transaction, could not process method</value>
        <value xml:lang="fr">La transaction ne peut débuter, une erreur est survenue</value>
        <value xml:lang="it">Errore provando a iniziare una transazione, non è possibile eseguire il metodo</value>
        <value xml:lang="ja">トランザクションの開始時にエラー、メソッドを処理できません</value>
        <value xml:lang="ro">Eroare la incercarea de a initia o</value>
        <value xml:lang="ru">Попытка начать транзакцию завершилась ошибкой, невозможно обработать метод</value>
        <value xml:lang="th">Error : ผิดพลด ! ในการเริ่มต้นดำเนินการ ไม่สามารถประมวลผลวิธีการนี้ได้</value>
        <value xml:lang="zh">尝试开始交易时出错，无法执行</value>
        <value xml:lang="zh-TW">嘗試開始交易時出錯,無法執行</value>
    </property>
    <property key="simpleMethod.error_running">
        <value xml:lang="de">Fehler beim Ausführen der simple-method</value>
        <value xml:lang="en">Error running the simple-method</value>
        <value xml:lang="es">Error running the simple-method</value>
        <value xml:lang="fr">Erreur pendant la simple-method</value>
        <value xml:lang="it">Errore nell'esecuzione del metodo-semplice</value>
        <value xml:lang="ja">シンプルメソッド実行時エラー</value>
        <value xml:lang="ro">Eroare in executia metodei-simple</value>
        <value xml:lang="ru">Ошибка выполнения simple-method</value>
        <value xml:lang="th">Error : ผิดพลาด ! ในการรัน simple-method</value>
        <value xml:lang="zh">运行这个简单方法时出错</value>
        <value xml:lang="zh-TW">執行這個簡單方法時出錯</value>
    </property>
    <property key="simpleMethod.error_show_service_name">
        <value xml:lang="en">calling service ${serviceName} in ${methodName}</value>
        <value xml:lang="it">eseguendo il servizio ${serviceName} in ${methodName}</value>
        <value xml:lang="ja">サービス ${serviceName} を ${methodName} で呼び出し</value>
        <value xml:lang="zh">在${methodName}中调用服务${serviceName} </value>
        <value xml:lang="zh-TW">在${methodName}中呼叫服務${serviceName} </value>
    </property>
    <property key="simpleMethod.must_logged_process">
        <value xml:lang="de">Sie müssen am System angemeldet sein um [${shortDescription}] auszuführen</value>
        <value xml:lang="en">You must be logged in to complete the [${shortDescription}] process</value>
        <value xml:lang="es">You must be logged in to complete the [${shortDescription}] process</value>
        <value xml:lang="fr">Vous devez être connecté pour pouvoir achever le process ${shortDescription}</value>
        <value xml:lang="it">Tu devi essere autenticato per completare il processo ${shortDescription}</value>
        <value xml:lang="ja">[${shortDescription}] プロセスの完了にはログインが必要です</value>
        <value xml:lang="ro">Trebbie sa fii autentificat pentru a putea completa procesul ${shortDescription}</value>
        <value xml:lang="ru">Для завершения процесса ${shortDescription} вы должны зарегистрироваться в системе</value>
        <value xml:lang="th">คุณต้องทำการเข้าสู่ระบบในการประมวลผล  [${shortDescription}] ให้เสร็จสมบูรณ์</value>
        <value xml:lang="zh">你必须登录才能完成${shortDescription}步骤</value>
        <value xml:lang="zh-TW">你必須登入才能完成${shortDescription}步驟</value>
    </property>
</resource>
