Бухгалтерия / Говнокод #17430 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
Если ЗаполненАдрес=0 Тогда
	Если  ПустаяСтрока(Запрос.ЭлПочта)=0 Тогда
		Продолжить;
	Иначе
		ТЗ.НоваяСтрока();
		ТЗ.Код			= Запрос.Контрагенты.Код;
		ТЗ.Контрагент 	= Запрос.Контрагенты.Наименование;
		ТЗ.ЭлАдрес		= Запрос.ЭлПочта;
	КонецЕсли;
иначе
	Если  ПустаяСтрока(Запрос.ЭлПочта)=1 Тогда
		Продолжить;
	Иначе
		ТЗ.НоваяСтрока();
		ТЗ.Код			= Запрос.Контрагенты.Код;
		ТЗ.Контрагент 	= Запрос.Контрагенты.Наименование;
		ТЗ.ЭлАдрес		= Запрос.ЭлПочта;
	КонецЕсли;
Конецесли;

ЗаполненАдрес - это чекбокс.
Если сократить код, то получится:

Если ЗаполненАдрес<>ПустаяСтрока(Запрос.ЭлПоч та) Тогда
ТЗ.НоваяСтрока();
ТЗ.Код = Запрос.Контрагенты.Код;
ТЗ.Контрагент = Запрос.Контрагенты.Наименование;
ТЗ.ЭлАдрес = Запрос.ЭлПочта;
КонецЕсли;

noncode noncode, (Updated )

Комментарии (9, +9)

Бухгалтерия / Говнокод #17355 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
//часть текста запроса
                               |ИЗ
		               |	ЭтапыОплатыИсходник КАК ЭтапыОплаты
		       		   |//ТекстОтбора
		               |{ГДЕ
.................

		//Добавляем поля если используется отбор
		ТекстОтбора="ГДЕ ";
		ТекстОтбора=ТекстОтбора+" ИСТИНА";		
		НомерПеременнойОтбора=1;
		Для каждого  СтрокаТекущегоОтбора Из ПостроительОтчета.Отбор Цикл

			if НЕ СтрокаТекущегоОтбора.Использование then
				continue;
			endif;

			СложноеИмяПоля=ПолучитьИмяПоляБезТочек(СтрокаТекущегоОтбора.ПутьКДанным);
			Если  ПостроительОтчета.Отбор.Найти(СложноеИмяПоля)=Неопределено Тогда
				Если СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.Больше Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" > &ПеременнаяОтбора"+НомерПеременнойОтбора;	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.БольшеИлиРавно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" >= &ПеременнаяОтбора"+НомерПеременнойОтбора;	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВИерархии или 
					СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВСписке или 
					СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВСпискеПоИерархии Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В (&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВИерархии Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В ИЕРАРХИИ(&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.Меньше Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" < &ПеременнаяОтбора"+НомерПеременнойОтбора;	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.МеньшеИлиРавно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" <= &ПеременнаяОтбора"+НомерПеременнойОтбора;	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеВСписке или 
					СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеВСпискеПоИерархии Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И НЕ "+"ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В (&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеВИерархии  Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И НЕ "+"ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В ИЕРАРХИИ(&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеРавно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" <> &ПеременнаяОтбора"+НомерПеременнойОтбора;	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.Равно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" = &ПеременнаяОтбора"+НомерПеременнойОтбора;	
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				КонецЕсли; 
			КонецЕсли; 
		КонецЦикла; 

		Если НомерПеременнойОтбора>1 Тогда
			Запрос.Текст=СтрЗаменить(Запрос.Текст,"//ТекстОтбора",ТекстОтбора);
		КонецЕсли;

При этом при всем, в отчете используется 2 построителя ( на одном не смог построить , одного видимо было было мало для стратегии заложенной в голове:) ) + между ними используется куча запросов , в которых выгружаются таблицы (РезультатЗапроса.Выполнить().Выгрузить( )) и передаются в следующие запросы как параметры.
От себя добавлю: Добавлял элементарные вещи, чтобы вывести пару дополнительных колонок - убить 1 час , тоже самое, что ничего не сделать..... Да и к тому же отчет рисуется через "ТабДок.Присоеденить".

Ba_Ka Ba_Ka, (Updated )

Комментарии (9, +9)

Бухгалтерия / Говнокод #17354 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
  66. 66
  67. 67
  68. 68
  69. 69
//часть текста запроса
                               |ИЗ
		               |	ЭтапыОплатыИсходник КАК ЭтапыОплаты
		       		   |//ТекстОтбора
		               |{ГДЕ
.................

		//Добавляем поля если используется отбор
		ТекстОтбора="ГДЕ ";
		ТекстОтбора=ТекстОтбора+" ИСТИНА";		//NP002
		НомерПеременнойОтбора=1;
		Для каждого  СтрокаТекущегоОтбора Из ПостроительОтчета.Отбор Цикл

			if НЕ СтрокаТекущегоОтбора.Использование then
				continue;
			endif;

			СложноеИмяПоля=ПолучитьИмяПоляБезТочек(СтрокаТекущегоОтбора.ПутьКДанным);
			Если  ПостроительОтчета.Отбор.Найти(СложноеИмяПоля)=Неопределено Тогда
				Если СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.Больше Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" > &ПеременнаяОтбора"+НомерПеременнойОтбора;	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.БольшеИлиРавно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" >= &ПеременнаяОтбора"+НомерПеременнойОтбора;	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВИерархии или 
					СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВСписке или 
					СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВСпискеПоИерархии Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В (&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.ВИерархии Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В ИЕРАРХИИ(&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.Меньше Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" < &ПеременнаяОтбора"+НомерПеременнойОтбора;	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.МеньшеИлиРавно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" <= &ПеременнаяОтбора"+НомерПеременнойОтбора;	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеВСписке или 
					СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеВСпискеПоИерархии Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И НЕ "+"ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В (&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеВИерархии  Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И НЕ "+"ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" В ИЕРАРХИИ(&ПеременнаяОтбора"+НомерПеременнойОтбора+")";	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.НеРавно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" <> &ПеременнаяОтбора"+НомерПеременнойОтбора;	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				ИначеЕсли СтрокаТекущегоОтбора.ВидСравнения=ВидСравнения.Равно Тогда
					ТекстОтбора=ТекстОтбора+Символы.ПС+" И ЭтапыОплаты."+СтрокаТекущегоОтбора.ПутьКДанным+" = &ПеременнаяОтбора"+НомерПеременнойОтбора;	//NP002
					Запрос.УстановитьПараметр("ПеременнаяОтбора"+НомерПеременнойОтбора,СтрокаТекущегоОтбора.Значение);
					НомерПеременнойОтбора=НомерПеременнойОтбора+1
				КонецЕсли; 
			КонецЕсли; 
		КонецЦикла; 

		Если НомерПеременнойОтбора>1 Тогда
			Запрос.Текст=СтрЗаменить(Запрос.Текст,"//ТекстОтбора",ТекстОтбора);
		КонецЕсли;

При этом при всем, в отчете используется 2 построителя ( на одном не смог построить , одного видимо было было мало для стратегии заложенной в голове:) ) + между ними используется куча запросов , в которых выгружаются таблицы (РезультатЗапроса.Выполнить().Выгрузить( )) и передаются в следующие запросы как параметры.
От себя добавлю: Добавлял элементарные вещи, чтобы вывести пару дополнительных колонок - убить 1 час , тоже самое, что ничего не сделать..... Да и к тому же отчет рисуется через "ТабДок.Присоеденить".

Ba_Ka Ba_Ka, (Updated )

Комментарии (0)

Бухгалтерия / Говнокод #17327 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
Процедура Флажок1ПриИзменении(Элемент)
	
	//выбираем контрагента
	ТК	= табК.найти(Контрагент, "контрагент");
	
	Первый	= 2+2;
	для кк=0 по табК.Количество()-1 цикл
		элементыформы.МаршрутныйЛистК.Область("C"+число(кк*3+1+Первый)).Видимость	= (ОтобразитьВсеМеста и ТабК[кк]=ТК);
	конеццикла;	
	
	
КонецПроцедуры

Продукт "1С:Молокозавод. Международная поставка для пользователей "1С:Управление производственным предприятием "
Форма документа "МОЛ_ЗаказПоМаршруту".
Фирма "ЦНТУиК" (ЗАО "Центр научно-технических услуг и консультаций").
Не понятно что они курят.

x-salik x-salik, (Updated )

Комментарии (2, +2)

Бухгалтерия / Говнокод #17253 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
Для Индекс = 1 По 4 Цикл

	Если Индекс = 1 Тогда
		<Действие1...>;
	ИначеЕсли Индекс = 2 Тогда
		<Действие2...>;
	ИначеЕсли Индекс = 3 Тогда
		<Действие3...>;
	ИначеЕсли Индекс = 4 Тогда
		<Действие4...>;
	КонецЦикла;	

КонецЦикла

facepeeler facepeeler, (Updated )

Комментарии (4, +4)

Бухгалтерия / Говнокод #17239 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
Попытка
      ТекущийЭлемент = ЭлементыФормы[АктивныйРеквизит];
      ТекущийЭлемент.АктивиризоватьПоУмолчанию();
Исключение
КонецПопытки;

Это прекрасно...
Автор - кто-то из 1С-Хомнет

Aleksandr_N Aleksandr_N, (Updated )

Комментарии (5, +5)

Бухгалтерия / Говнокод #17201 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
Попытка
        ЭлементыФормы[Надпись].Картинка = БиблиотекаКартинок.ЗначокОбработкаВПанелиФункций16
Исключение
        Попытка
                ЭлементыФормы[Надпись].Картинка = БиблиотекаКартинок.Выполнить
        Исключение
                Попытка
                        ЭлементыФормы[Надпись].Картинка = БиблиотекаКартинок.Сформировать
                Исключение
                        Попытка
                                ЭлементыФормы[Надпись].Картинка = БиблиотекаКартинок.ПерейтиНаСледующийЭтапСделки
                        Исключение
                                Попытка
                                        ЭлементыФормы[Надпись].Картинка = БиблиотекаКартинок.ВыполнитьОбменДаннымиИнтерактивно
                                Исключение
                                КонецПопытки
                        КонецПопытки
                КонецПопытки
        КонецПопытки
КонецПопытки;

Отака хуєта розкидана в одній і тій самій обробці в кількох місцях

monstrodev monstrodev, (Updated )

Комментарии (11, +11)

Бухгалтерия / Говнокод #17076 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
Функция ПолучитьДробнуюЧасть(Число)
	
	Если Не ТипЗнч(Число) = Тип("Число") Тогда
		Возврат 0;
	КонецЕсли;
	ЧислоСтрокой = Строка(Число);
	Инд = 1;
	Пока Истина Цикл
	Символ = Сред(ЧислоСтрокой, Инд, 1);	
	Если Символ = "" Тогда
		Возврат 0;
	ИначеЕсли Символ = "," Тогда
		Если Сред(ЧислоСтрокой, Инд + 1, 1) = "" Тогда
			Возврат 0;
		КонецЕсли;
		
		Если Сред(ЧислоСтрокой, Инд + 2, 1) = "" Тогда
			Возврат Число(Сред(ЧислоСтрокой, Инд + 1, 1));
		КонецЕсли;
		
		Если Сред(ЧислоСтрокой, Инд + 3, 1) = "" Тогда
			Возврат Число(Сред(ЧислоСтрокой, Инд + 1, 1) + Сред(ЧислоСтрокой, Инд + 2, 1));
		Иначе
			Возврат Число(Сред(ЧислоСтрокой, Инд + 1, 1) + Сред(ЧислоСтрокой, Инд + 2, 1) + Сред(ЧислоСтрокой, Инд + 3, 1));
		КонецЕсли;
	КонецЕсли;
	Инд = Инд + 1;
	КонецЦикла;
КонецФункции

Еще один "анекдот" от неизвестного автора. Предыдущий здесь: http://govnokod.ru/16639

Jeyrico Jeyrico, (Updated )

Комментарии (31, +31)