Доброго дня!
1С:Предприятие 8.3 (8.3.9.2170), Управление производственным предприятием, редакция 1.3 (1.3.90.1). Формы обычные.
Есть кусок кода (хранится в справочнике):
Если Не ГМЗ_СогласованиеДокументов.ТребоватьПроверкуРасценкиЗаказногоЛимита(ПараметрыВыполненияКода.СсылкаДокумента) Тогда // Два ЕСЛИ, чтобы сократить длину строки Если (ПараметрыВыполненияКода.НовоеСостояниеДокумента = Перечисления.ГМЗ_СостоянияДокументов.Согласован) Тогда Если (ПараметрыВыполненияКода.НовоеСостояниеДокумента = Перечисления.ГМЗ_СостоянияДокументов.Утвержден) Тогда прм_Запрос = Новый Запрос; прм_Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | ГМЗ_УстановкаЦенМатериаловЛимитов.Ссылка |ИЗ | Документ.ГМЗ_УстановкаЦенМатериаловЛимитов КАК ГМЗ_УстановкаЦенМатериаловЛимитов |ГДЕ | ГМЗ_УстановкаЦенМатериаловЛимитов.Проведен = ИСТИНА | И ГМЗ_УстановкаЦенМатериаловЛимитов.ДокументЛимитов = &ДокументЛимитов"; прм_Запрос.УстановитьПараметр("ДокументЛимитов", ПараметрыВыполненияКода.СсылкаДокумента); прм_РезультатЗапроса = прм_Запрос.Выполнить(); прм_Выб = прм_РезультатЗапроса.Выбрать(); прм_НовоеСостояние = Перечисления.ГМЗ_СостоянияДокументов.Утвержден; прм_Комментарий = "Утвержден при утверждении документа лимита"; прм_РезОперации = ""; Пока прм_Выб.Следующий() Цикл прм_СтрК = Новый Структура("Состояние, Комментарий", прм_НовоеСостояние, прм_Комментарий); прм_Рез = ГМЗ_СогласованиеДокументов.УстановитьНовоеСостояниеДокумента(прм_Выб.Ссылка, прм_СтрК); прм_РезОперации=?(прм_РезОперации = "","",прм_РезОперации +Символы.ПС+"Утверждение "+СокрЛП(прм_Выб.Ссылка)+":"+?(прм_Рез = "", "ОК", "ОШИБКА!!! " + прм_Рез)); КонецЦикла; ПараметрыВыполненияКода.СтатусОбработкиДокумента = прм_РезОперации; КонецЕсли; КонецЕсли; КонецЕсли;
В модуле формы обработки вызываю
ПараметрыВыполненияКода = Новый Структура("СсылкаДокумента, СсылкаПроверяемогоЭтапа, НовоеСостояниеДокумента, СтатусОбработкиДокумента"); ПараметрыВыполненияКода.СсылкаДокумента = СтрокаТабличнойЧасти.Ссылка; ПараметрыВыполненияКода.СсылкаПроверяемогоЭтапа = НовыйЭтап; ПараметрыВыполненияКода.НовоеСостояниеДокумента = НовоеСостояниеТекущегоДокумента; ПараметрыВыполненияКода.СтатусОбработкиДокумента = ""; Выполнить(КодПостОбработки);
…
Вылезает вот такая ошибка: Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(37,96)}: Ожидается символ ‘)’
Несмотря на это, при вставке кода напрямую в модуль формы (вместо Выполнить(КодПостОбработки)) все работает!
Я пытался уменьшить длину строк текста, все тщетно. Может, есть какие-то ограничения платформы?
Спасибо.
Помогите дилетанту разобраться с формулой
Автор KENT, 21 фев 2018, 20:17
0 Пользователей и 1 гость просматривают эту тему.
Помогите разобраться с формулой или подскажите как устанавливать %НДС при автоматическом создании номенклатуры из файла dbf
Пытаюсь вычислить по формуле, но выдает вот такую ошибку.
Строка 1 (Ставка НДС): Ошибка при вычислении выражения Если ТекстЯчейки = «18» Тогда
Результат = Перечисления.СтавкиНДС.НДС18;
КонецЕсли;
Иначе
Если ТекстЯчейки = «10» Тогда
Результат = Перечисления.СтавкиНДС.НДС10;
КонецЕсли;
Иначе
Если ТекстЯчейки = «0» Тогда
Результат = Перечисления.СтавкиНДС.НДС0;
КонецЕсли;
Иначе
Результат = Перечисления.СтавкиНДС.БезНДС;
КонецЕсли: {ОбщийМодуль.ор_ЗагрузкаИзЭлектронныхДокументовСервер.Модуль(3254)}: Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(4,2)}: Ожидается последовательность операторов
Уберите лишние КонецЕсли, код должен приобрести вид:
Если ТекстЯчейки = "18" Тогда
Результат = Перечисления.СтавкиНДС.НДС18;
Иначе Если ТекстЯчейки = "10" Тогда
Результат = Перечисления.СтавкиНДС.НДС10;
Иначе Если ТекстЯчейки = "0" Тогда
Результат = Перечисления.СтавкиНДС.НДС0;
Иначе
Результат = Перечисления.СтавкиНДС.БезНДС;
КонецЕсли;
Цитата: pavl_vs от 21 фев 2018, 20:29
Уберите лишние КонецЕсли, код должен приобрести вид:
Если ТекстЯчейки = "18" Тогда
Результат = Перечисления.СтавкиНДС.НДС18;
Иначе Если ТекстЯчейки = "10" Тогда
Результат = Перечисления.СтавкиНДС.НДС10;
Иначе Если ТекстЯчейки = "0" Тогда
Результат = Перечисления.СтавкиНДС.НДС0;
Иначе
Результат = Перечисления.СтавкиНДС.БезНДС;
КонецЕсли;
Убрал
Ошибка при вычислении выражения Если ТекстЯчейки = «18» Тогда
Результат = Перечисления.СтавкиНДС.НДС18;
Иначе Если ТекстЯчейки = «10» Тогда
Результат = Перечисления.СтавкиНДС.НДС10;
Иначе Если ТекстЯчейки = «0» Тогда
Результат = Перечисления.СтавкиНДС.НДС0;
Иначе
Результат = Перечисления.СтавкиНДС.БезНДС;
КонецЕсли;: {ОбщийМодуль.ор_ЗагрузкаИзЭлектронныхДокументовСервер.Модуль(3254)}: Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(9,11)}: Ожидается ключевое слово ‘КонецЕсли’ (‘EndIf’)
Теги:
- Форум 1С
-
►
Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4 -
►
Конфигурирование, программирование в 1С Предприятие 8 -
►
Помогите дилетанту разобраться с формулой
Похожие темы (5)
Поиск
Ситуация такая УТ нетиповая, БП — типовая
делаю выгрузку через УниверсальныйОбменXML по стандартным привилам УТ с БП 2.0
и при нажатии Выгрузить данные вылазит ошибка:
Ошибка в обработчике события ПередВыгрузкойДанных (конвертация)
Обработчик = ПередВыгрузкойДанных (конвертация)
ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML(12582)
КодСообщения = 62
сам модуль перед выгрузкой вот:
Параметры.Вставить(«ВалютаРегламентированногоУчета», Константы.ВалютаРегламентированногоУчета.Получить());
Параметры.Вставить(«ВалютаУправленческогоУчета», Константы.ВалютаУправленческогоУчета.Получить());
Если НЕ Параметры.ПервыйОбмен Тогда
Параметры.Вставить(«ДатаНачалаВыгрузкиДокументов»,УзелДляОбмена.ДатаНачалаВыгрузкиДокументов);
Параметры.Вставить(«ПередаватьТолькоДокументыОтраженныеВБухгалтерскомУчете»,УзелДляОбмена.ПередаватьТолькоДокументыОтраженныеВБухгалтерскомУчете);
Параметры.Вставить(«ИспользоватьФильтрПоОрганизациям»,?(УзелДляОбмена.Организации.Количество()>0,Истина,Ложь));
Параметры.Вставить(«ИспользоватьФильтрПоСкладам»,?(УзелДляОбмена.Склады.Количество()>0,Истина,Ложь));
Параметры.Вставить(«ИспользоватьФильтрПоПодразделениям»,?(УзелДляОбмена.Подразделения.Количество()>0,Истина,Ложь));
Если Параметры.ИспользоватьФильтрПоОрганизациям Тогда
Параметры.Вставить(«МассивОрганизаций»,УзелДляОбмена.Организации.Выгрузить().ВыгрузитьКолонку(«Организация»));
КонецЕсли;
Если Параметры.ИспользоватьФильтрПоСкладам Тогда
Параметры.Вставить(«МассивСкладов»,УзелДляОбмена.Склады.Выгрузить().ВыгрузитьКолонку(«Склад»));
КонецЕсли;
Если Параметры.ИспользоватьФильтрПоПодразделениям Тогда
Параметры.Вставить(«МассивПодразделений»,УзелДляОбмена.Подразделения.Выгрузить().ВыгрузитьКолонку(«Подразделение»));
КонецЕсли;
МассивТиповДокументов = Новый Массив;
Для каждого МетаДокумент Из Метаданные.Документы цикл
МассивТиповДокументов.Добавить(Тип(«ДокументСсылка.» + МетаДокумент.Имя));
МассивТиповДокументов.Добавить(Тип(«ДокументОбъект.» + МетаДокумент.Имя));
КонецЦикла;
ОписаниеТиповДокументы = Новый ОписаниеТипов(МассивТиповДокументов);
Параметры.Вставить(«ОписаниеТиповДокументы»,ОписаниеТиповДокументы);
МассивТиповДокументов.Очистить();
МассивТиповДокументов.Добавить(Тип(«ДокументСсылка.СчетФактураВыданный»));
МассивТиповДокументов.Добавить(Тип(«ДокументСсылка.СчетФактураПолученный»));
МассивТиповДокументов.Добавить(Тип(«ДокументОбъект.СчетФактураПолученный»));
МассивТиповДокументов.Добавить(Тип(«ДокументОбъект.СчетФактураВыданный»));
ОписаниеТиповДокументы = Новый ОписаниеТипов(МассивТиповДокументов);
Параметры.Вставить(«ОписаниеТиповДокументыСФ»,ОписаниеТиповДокументы);
КонецЕсли;
// Документы расчетов (БП зачет аванса), несовместимые типы документов.
// Обмен не поддерживается.
СтруктураНевыгружаемыхДокументовРасчетов = Новый Структура();
// СписаниеСРасчетногоСчета
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.РеализацияТоваровУслуг»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомиссионераОПродажах»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«СписаниеСРасчетногоСчета», Массив);
// ПоступлениеНаРасчетныйСчет
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщикуИзНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщику»));
Массив.Добавить(Тип(«ДокументСсылка.АвансовыйОтчет»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеДопРасходов»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеТребованиеВыставленное»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеТоваровУслугВНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.ИнкассовоеПоручениеПереданное»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеВходящее»));
Массив.Добавить(Тип(«ДокументСсылка.АккредитивПолученный»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеТоваровУслуг»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежныйОрдерПоступлениеДенежныхСредств»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«ПоступлениеНаРасчетныйСчет», Массив);
// ПоступлениеТоваровУслуг
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщикуИзНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщику»));
Массив.Добавить(Тип(«ДокументСсылка.ПриходныйКассовыйОрдер»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеДопРасходов»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеВходящее»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомиссионераОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.РеализацияТоваровУслуг»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«ПоступлениеТоваровУслуг», Массив);
// ПриходныйКассовыйОрдер
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.КорректировкаДолгаПоВозвратнойТаре»));
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровОтПокупателя»));
Массив.Добавить(Тип(«ДокументСсылка.ПриходныйКассовыйОрдер»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеДопРасходов»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеТребованиеВыставленное»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.ИнкассовоеПоручениеПереданное»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеВходящее»));
Массив.Добавить(Тип(«ДокументСсылка.АккредитивПолученный»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежныйОрдерПоступлениеДенежныхСредств»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«ПриходныйКассовыйОрдер», Массив);
// РасходныйКассовыйОрдер
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.КорректировкаДолгаПоВозвратнойТаре»));
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщикуИзНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ИнкассовоеПоручениеПолученное»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеИсходящее»));
Массив.Добавить(Тип(«ДокументСсылка.РасходныйКассовыйОрдер»));
Массив.Добавить(Тип(«ДокументСсылка.АккредитивПереданный»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеТоваровУслугВНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежныйОрдерСписаниеДенежныхСредств»));
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщику»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеТребованиеПолученное»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомиссионераОПродажах»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«РасходныйКассовыйОрдер», Массив);
// РеализацияТоваровУслуг
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровОтПокупателя»));
Массив.Добавить(Тип(«ДокументСсылка.ИнкассовоеПоручениеПолученное»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеИсходящее»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеДопРасходов»));
Массив.Добавить(Тип(«ДокументСсылка.РасходныйКассовыйОрдер»));
Массив.Добавить(Тип(«ДокументСсылка.АккредитивПереданный»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеТоваровУслуг»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеТребованиеПолученное»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомиссионераОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.АвансовыйОтчет»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«РеализацияТоваровУслуг», Массив);
// ПоступлениеДопРасходов
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщикуИзНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровПоставщику»));
Массив.Добавить(Тип(«ДокументСсылка.ПриходныйКассовыйОрдер»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеДопРасходов»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеТребованиеВыставленное»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.ИнкассовоеПоручениеПереданное»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеВходящее»));
Массив.Добавить(Тип(«ДокументСсылка.АккредитивПолученный»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомиссионераОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.РеализацияТоваровУслуг»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежныйОрдерПоступлениеДенежныхСредств»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«ПоступлениеДопРасходов», Массив);
// ОтчетКомиссионераОПродажах
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ВозвратТоваровОтПокупателя»));
Массив.Добавить(Тип(«ДокументСсылка.ДокументРасчетовСКонтрагентом»));
Массив.Добавить(Тип(«ДокументСсылка.ДокументРасчетовСКонтрагентом»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеПоручениеИсходящее»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеДопРасходов»));
Массив.Добавить(Тип(«ДокументСсылка.РасходныйКассовыйОрдер»));
Массив.Добавить(Тип(«ДокументСсылка.АккредитивПереданный»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеТоваровУслугВНТТ»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомитентуОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежныйОрдерСписаниеДенежныхСредств»));
Массив.Добавить(Тип(«ДокументСсылка.ПоступлениеТоваровУслуг»));
Массив.Добавить(Тип(«ДокументСсылка.ПлатежноеТребованиеПолученное»));
Массив.Добавить(Тип(«ДокументСсылка.ОтчетКомиссионераОПродажах»));
Массив.Добавить(Тип(«ДокументСсылка.АвансовыйОтчет»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«ОтчетКомиссионераОПродажах», Массив);
// КорректировкаДолга
Массив = Новый Массив();
Массив.Добавить(Тип(«ДокументСсылка.ОтражениеРеализацииТоваровИУслугНДС»));
Массив.Добавить(Тип(«ДокументСсылка.КорректировкаДолгаПоВозвратнойТаре»));
Массив.Добавить(Тип(«ДокументСсылка.ОплатаОтПокупателяПлатежнойКартой»));
Массив.Добавить(Тип(«ДокументСсылка.ОтражениеПоступленияТоваровИУслугНДС»));
СтруктураНевыгружаемыхДокументовРасчетов.Вставить(«КорректировкаДолга», Массив);
///////////////
Параметры.СтруктураНевыгружаемыхДокументовРасчетов = СтруктураНевыгружаемыхДокументовРасчетов;
Как решить такую проблему?
Показывать по
10
20
40
сообщений
Новая тема
Ответить
MaGeron
Дата регистрации: 17.04.2010
Сообщений: 3
Доброго времени суток.
Производим перенос данных из БП 3.0.67.74 в УТ 11.4.6.207 с помощью обработки Выгрузка данных из БП 3.0
При загрузке в УТ на этапе загрузки настроек параметров появляется ошибка. Собственно вопрос, как исправить это?
Код |
---|
Начало загрузки: 07.02.2019 16:55:44 Ошибка в обработчике события ПослеЗагрузкиДанных (конвертация) Обработчик = ПослеЗагрузкиДанных (конвертация) ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(47,29)}: Переменная не определена (ПереносДанныхЗарплатаКадры) ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(12725) Окончание загрузки: 07.02.2019 16:55:44 Загружено объектов: 2 Начало загрузки: 07.02.2019 16:55:44 Ошибка в обработчике события ПослеЗагрузкиДанных (конвертация) Обработчик = ПослеЗагрузкиДанных (конвертация) ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(47,29)}: Переменная не определена (ПереносДанныхЗарплатаКадры) ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(12725) Окончание загрузки: 07.02.2019 16:55:44 Загружено объектов: 2 |
Vladko
Дата регистрации: 27.08.2007
Сообщений: 2643
MaGeron,очевидно, что надо разбираться с правилами переноса. Для этого необходимо разбираться в Конвертации Данных.
Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20836
Такое ощущение, что идет обмен по правилам переноса между БП и ЗУП
MaGeron
Дата регистрации: 17.04.2010
Сообщений: 3
Prikum пишет:
Цитата |
---|
Такое ощущение, что идет обмен по правилам переноса между БП и ЗУП |
Нет, обработка ВыгрузкаДанныхИзБП3.0 взята из ERP 2.0, и на определенном этапе есть выбор, куда из БП будет выгрузка: ERP, УТ и КА. В ERP и КА как раз и предусмотрено ведение зарплаты, и судя по всему где-то в правилах конвертации есть ошибка для УТ и найти не могу
Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20836
MaGeron пишет:
Цитата |
---|
и судя по всему где-то в правилах конвертации есть ошибка для УТ и найти не могу |
тогда надо смотреть события перед загрузкой настроек
Консультант 1С
Дата регистрации: 06.09.2008
Сообщений: 300
MaGeron пишет:
Цитата |
---|
Доброго времени суток. Производим перенос данных из БП 3.0.67.74 в УТ 11.4.6.207 с помощью обработки Выгрузка данных из БП 3.0 |
Вышли релизы ERP 2.4.6.230 — УТ 11.4.6.230
Может, мам было исправлено?
Консультант 1С
Дата регистрации: 06.09.2008
Сообщений: 300
MaGeron пишет:
Цитата |
---|
Нет, обработка ВыгрузкаДанныхИзБП3.0 взята из ERP 2.0 |
Нету в ERP 2.0 такой обработки
Показывать по
10
20
40
сообщений