Показать сообщение отдельно
Старый 30.12.2002, 12:12   #1  
Garic is offline
Garic
NavAx
Аватар для Garic
NavAx Club
 
393 / 63 (3) ++++
Регистрация: 23.07.2002
Адрес: Москва
Очередная фича Аксапты
Есть следующая ф-ция:
PHP код:
static str TranslitRu2Eng(str _source)
{
    
int i;
    
str result;

    
str transChar(char _char)
    {
        switch (
_char)
        {
            case 
'А' : return 'A';
            case 
'Б' : return 'B';

            ...................

            default : return 
_char;
        }
    }

    
_source strupr(_source);

    for (
1<= strlen(_source); i++)
    {
        
result += transChar(substr(_source,i,1));
    }

    return 
result;

На строке result += выдаётся пустой инфобокс. Судя по всему возникает именно при оберации return. Ошибка возникает не в всех версиях Аксапты.
Вероятно возникает из-за того, что компилятор не переваривает такое количество return-ов в switch. Лечится использованием break вместо return.
__________________
С уважением, Игорь Ласийчук.