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

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
Функция ОпределитьВидКонтрагента(Контрагент) Экспорт
	
	 Запрос = Новый Запрос;
	 
	 Запрос.УстановитьПараметр("Контрагент", Контрагент);
	 
	 ТекстЗапроса = "ВЫБРАТЬ
		|	Контрагенты.Ссылка КАК Контрагент,
		|	Контрагенты.Представление КАК Представление,
		|	Контрагенты.ЮрФизЛицо КАК ЮрФизЛицо
		|ИЗ
		|	Справочник.Контрагенты КАК Контрагенты
		|ГДЕ
		|	Контрагенты.ЮрФизЛицо = ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.ЮрЛицоНеРезидент)
		|	И Контрагенты.Ссылка = &Контрагент";
	 
	 Запрос.Текст = ТекстЗапроса;
	 	 
	 РезультатЗапроса = Запрос.Выполнить();
	 
	 Если РезультатЗапроса.Пустой() Тогда
		 Возврат Ложь;
	 КонецЕсли;
	 
	 Выборка = РезультатЗапроса.Выбрать();
	 
	 Пока Выборка.Следующий() Цикл
		 
		 Если Контрагент = Выборка.Контрагент Тогда
			 Возврат Истина;
			 
		 Иначе
			 Возврат Ложь;
			 
		 КонецЕсли;
		 
	 КонецЦикла;
	 
КонецФункции

cdpoma cdpoma, (Updated )

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

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

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
  70. 70
  71. 71
  72. 72
  73. 73
  74. 74
  75. 75
  76. 76
  77. 77
  78. 78
  79. 79
  80. 80
  81. 81
  82. 82
  83. 83
  84. 84
  85. 85
  86. 86
  87. 87
  88. 88
  89. 89
  90. 90
  91. 91
  92. 92
  93. 93
  94. 94
  95. 95
  96. 96
  97. 97
  98. 98
// Заполняет документ заказ данными с сайта.
// 
// Параметры:
//  ДокументОбъект - ДокументОбъект - объект документа Заказ покупателя.
//  РеквизитыЗаказа - Структура - содержит значения реквизитов заказа, загруженных с сайта:
//     * Ид - Идентификатор заказа, очень часто тоже что и номер.
//     * Дата				- дата создания заказа на сайте.
//     * Номер				- номер заказа на сайте.
//     * ДатаОтгрузки		- дата отгрузки товара по заказу.
//     * ВалютаДокументаКод	- трехзначный идентификатор валюты.
//     * ВидЦенНаименование	- наименование вида цены.
//     * СуммаВключаетНДС	- признак включения НДС.
//     * НаименованиеСкидки	- наименование скидки.
//     * ПроцентСкидки		- процент скидки.
//     * СуммаСкидки		- сумма скидки по заказу.
//     * СкладНаименование 	- наименование склада, точки самовывоза.
//     * ПодразделениеНаименование - наименование подразделения.
//     * Контрагент			- ссылка на контрагента, который уже был идентифицирован в базе.
//     * АдресДоставки      - строка адреса доставки.
//     * ТочкаСамовывоза	- ссылка на элемент справочника, который в прикладном решении является справочником точек самовывоза или Неопределено.
//     * Товары				- табличная часть документа.
//     * Комментарий		- текстовый комментарий.
//  СвойстваЗаказа - Соответствие - содержит строковое представления свойств (ключ) и значений (значение) заказа.
//  ПрикладныеПараметры - Структура - содержит параметры прикладного решения, добавленные на форму узла плана обмена.
//  ОписаниеОшибки - Строка - текстовое представление ошибки.
//  Успешно - Булево - признак заполнения документа.
//
Процедура ЗаполнитьЗаказ(ДокументОбъект, РеквизитыЗаказа, СвойстваЗаказа,
                         ПрикладныеПараметры, ОписаниеОшибки, Успешно) Экспорт
	//++ НЕ ГОСИС
	Валюта = Неопределено;
	ОбменССайтамиУТ.ОбработатьВалютуXML(Валюта, РеквизитыЗаказа.ВалютаДокументаКод);
	
	ДокументОбъект.Дата          = РеквизитыЗаказа.Дата;
	ДокументОбъект.Валюта        = Валюта;
	ДокументОбъект.Соглашение    = ПрикладныеПараметры.Соглашение;
	ДокументОбъект.Организация   = ПрикладныеПараметры.Организация;
	ДокументОбъект.Менеджер      = ПрикладныеПараметры.Менеджер;
	ДокументОбъект.Контрагент    = РеквизитыЗаказа.Контрагент;
	ДокументОбъект.Партнер       = РеквизитыЗаказа.Партнер;
	ДокументОбъект.ЦенаВключаетНДС = РеквизитыЗаказа.СуммаВключаетНДС;
	ДокументОбъект.Склад           = ?(ЗначениеЗаполнено(РеквизитыЗаказа.ТочкаСамовывоза),
	                                   РеквизитыЗаказа.ТочкаСамовывоза, 
	                                   ПрикладныеПараметры.Склад);
	
	УсловияПродаж = ПродажиСервер.ПолучитьУсловияПродаж(ПрикладныеПараметры.Соглашение);
	
	Если НЕ ЗначениеЗаполнено(УсловияПродаж.ИспользуютсяДоговорыКонтрагентов) 
		ИЛИ НЕ УсловияПродаж.ИспользуютсяДоговорыКонтрагентов Тогда
		ДокументОбъект.ПорядокОплаты = УсловияПродаж.ПорядокОплаты;
	Иначе
		ДокументОбъект.ПорядокОплаты = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.Договор, "ПорядокОплаты");
	КонецЕсли;
	
	ДокументОбъект.ВернутьМногооборотнуюТару = УсловияПродаж.ВозвращатьМногооборотнуюТару;
	ЗаполнитьЗначенияСвойств(ДокументОбъект,
	                         УсловияПродаж,
	                        "ХозяйственнаяОперация, ГруппаФинансовогоУчета,
	                        |ТребуетсяЗалогЗаТару, ФормаОплаты, ГрафикОплаты");
	Если ЗначениеЗаполнено(ДокументОбъект.ГрафикОплаты) Тогда
		ДокументОбъект.ФормаОплаты = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.ГрафикОплаты, "ФормаОплаты");
	КонецЕсли;
	
	ДокументОбъект.ВернутьМногооборотнуюТару = УсловияПродаж.ВозвращатьМногооборотнуюТару;
	ДокументОбъект.Приоритет = Справочники.Приоритеты.ПолучитьПриоритетПоУмолчанию(ДокументОбъект.Приоритет);
	Если УсловияПродаж.ИспользуютсяДоговорыКонтрагентов Тогда
		
		ДокументОбъект.Договор = ПродажиСервер.ПолучитьДоговорПоУмолчанию(ДокументОбъект,
		                                                                  УсловияПродаж.ХозяйственнаяОперация,
		                                                                  Валюта);
		
		Если ЗначениеЗаполнено(ДокументОбъект.Договор) Тогда
			ДокументОбъект.НалогообложениеНДС = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ДокументОбъект.Договор,
				"НалогообложениеНДС");
		КонецЕсли;
		
	КонецЕсли;
	
	Если НЕ ЗначениеЗаполнено(ДокументОбъект.НалогообложениеНДС) Тогда
		ДокументОбъект.НалогообложениеНДС = Справочники.Организации.НалогообложениеНДС(
			ДокументОбъект.Организация,
			ДокументОбъект.Склад,
			ДокументОбъект.Дата);
	КонецЕсли;
	
	Комментарий = "";
	Если Не ПустаяСтрока(РеквизитыЗаказа.Комментарий) Тогда
		Комментарий = Комментарий + НСтр("ru = 'Комментарий менеджера на сайте'") + ": " +РеквизитыЗаказа.Комментарий;
	КонецЕсли;
	
	КомментарийПокупателя = СвойстваЗаказа.Получить("Комментарии покупателя");
	Если Не КомментарийПокупателя = Неопределено И Не ПустаяСтрока(КомментарийПокупателя) Тогда
		Комментарий = Комментарий + ?(ПустаяСтрока(Комментарий),"",Символы.ПС) + НСтр("ru = 'Комментарий покупателя на сайте'") + ": " + КомментарийПокупателя;
	КонецЕсли;
	
	ДокументОбъект.Комментарий   = Комментарий;
	
	СтатусЗаказа = СвойстваЗаказа.Получить("Статус заказа");

0x255 0x255, (Updated )

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

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

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
  70. 70
  71. 71
  72. 72
// Раздел 1 продолжение, расчет графы 5 и 6.
	Области.П010000105.Значение = Области.П010000205.Значение
	                                         + Области.П010000305.Значение
	                                         + Области.П010000405.Значение
	                                         + Области.П010000505.Значение
	                                         + Области.П010000605.Значение
	                                         + Области.П010000705.Значение
	                                         + Области.П010000805.Значение
	                                         + Области.П010000905.Значение
	                                         + Области.П010001005.Значение
	                                         + Области.П010001105.Значение;
	Если Области.П010000105.Значение = 0 Тогда
		ФорматПредставленияНуля = ?(ПустаяСтрока(Области.П010000205.Текст
	                                           + Области.П010000305.Текст
	                                           + Области.П010000405.Текст
	                                           + Области.П010000505.Текст
	                                           + Области.П010000605.Текст
	                                           + Области.П010000705.Текст
	                                           + Области.П010000805.Текст
	                                           + Области.П010000905.Текст
	                                           + Области.П010001005.Текст
	                                           + Области.П010001105.Текст), "ЧН=' '", "ЧН=");
		Области.П010000105.Формат = РегламентированнаяОтчетностьКлиентСервер.ЗаменитьПредставлениеНуляВСтрокеФормата(Области.П010000105.Формат, ФорматПредставленияНуля);
	КонецЕсли;
	
	Области.П010000106.Значение = Области.П010000206.Значение
	                                         + Области.П010000306.Значение
	                                         + Области.П010000406.Значение
	                                         + Области.П010000506.Значение
	                                         + Области.П010000606.Значение
	                                         + Области.П010000706.Значение
	                                         + Области.П010000806.Значение
	                                         + Области.П010000906.Значение
	                                         + Области.П010001006.Значение
	                                         + Области.П010001106.Значение;
	Если Области.П010000106.Значение = 0 Тогда
		ФорматПредставленияНуля = ?(ПустаяСтрока(Области.П010000206.Текст
	                                           + Области.П010000306.Текст
	                                           + Области.П010000406.Текст
	                                           + Области.П010000506.Текст
	                                           + Области.П010000606.Текст
	                                           + Области.П010000706.Текст
	                                           + Области.П010000806.Текст
	                                           + Области.П010000906.Текст
	                                           + Области.П010001006.Текст
	                                           + Области.П010001106.Текст), "ЧН=' '", "ЧН=");
		Области.П010000106.Формат = РегламентированнаяОтчетностьКлиентСервер.ЗаменитьПредставлениеНуляВСтрокеФормата(Области.П010000106.Формат, ФорматПредставленияНуля);
	КонецЕсли;
	
	Области.П010000107.Значение = Области.П010000207.Значение
	                                         + Области.П010000307.Значение
	                                         + Области.П010000407.Значение
	                                         + Области.П010000507.Значение
	                                         + Области.П010000607.Значение
	                                         + Области.П010000707.Значение
	                                         + Области.П010000807.Значение
	                                         + Области.П010000907.Значение
	                                         + Области.П010001007.Значение
	                                         + Области.П010001107.Значение;
	Если Области.П010000107.Значение = 0 Тогда
		ФорматПредставленияНуля = ?(ПустаяСтрока(Области.П010000207.Текст
	                                           + Области.П010000307.Текст
	                                           + Области.П010000407.Текст
	                                           + Области.П010000507.Текст
	                                           + Области.П010000607.Текст
	                                           + Области.П010000707.Текст
	                                           + Области.П010000807.Текст
	                                           + Области.П010000907.Текст
	                                           + Области.П010001007.Текст
	                                           + Области.П010001107.Текст), "ЧН=' '", "ЧН=");
		Области.П010000107.Формат = РегламентированнаяОтчетностьКлиентСервер.ЗаменитьПредставлениеНуляВСтрокеФормата(Области.П010000107.Формат, ФорматПредставленияНуля);
	КонецЕсли;

zoebis

TOPT TOPT, (Updated )

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

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

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
Запрос = Новый Запрос;
	Запрос.УстановитьПараметр("Регистратор",              ЭтотОбъект.Отбор.Регистратор.Значение);
	Запрос.УстановитьПараметр("НачалоПериода",            ЭтотОбъект.Отбор.Регистратор.Значение.МоментВремени());
	Запрос.УстановитьПараметр("КонецПериода",             ЭтотОбъект.Отбор.Регистратор.Значение.МоментВремени());

	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ТаблицаСоставаДокумента.Склад,
	|	ТаблицаСоставаДокумента.Номенклатура,
	|	ТаблицаСоставаДокумента.Качество,
	|	ТаблицаСоставаДокумента.ХарактеристикаНоменклатуры,
	|	ТаблицаСоставаДокумента.СерияНоменклатуры
	|ПОМЕСТИТЬ ВТ_Состава_Документа
	|ИЗ
	|	&ТаблицаСоставаДокумента КАК ТаблицаСоставаДокумента
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ
	|	СвободныеОстаткиОстаткиИОбороты.Склад,
	|	СвободныеОстаткиОстаткиИОбороты.Номенклатура,
	|	СвободныеОстаткиОстаткиИОбороты.Качество,
	|	СвободныеОстаткиОстаткиИОбороты.ХарактеристикаНоменклатуры,
	|	СвободныеОстаткиОстаткиИОбороты.СерияНоменклатуры,
	|	СвободныеОстаткиОстаткиИОбороты.КоличествоНачальныйОстаток,
	|	СвободныеОстаткиОстаткиИОбороты.КоличествоКонечныйОстаток
	|ИЗ
	|	РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
	|			&НачалоПериода,
	|			&КонецПериода,
	|			Запись,
	|			Движения,
	|			НЕ Номенклатура.ВидНоменклатуры = ЗНАЧЕНИЕ(Справочник.ВидыНоменклатуры.Продукция)
	|				И НЕ Номенклатура.ВестиУчетПоСериям
	|				И (Склад, Номенклатура, Качество, ХарактеристикаНоменклатуры, СерияНоменклатуры) В
	|					(ВЫБРАТЬ
	|						ВТ_СоставаДокумента.Склад,
	|						ВТ_СоставаДокумента.Номенклатура,
	|						ВТ_СоставаДокумента.Качество,
	|						ВТ_СоставаДокумента.ХарактеристикаНоменклатуры,
	|						ВТ_СоставаДокумента.СерияНоменклатуры
	|					ИЗ
	|						ВТ_Состава_Документа КАК ВТ_СоставаДокумента)) КАК СвободныеОстаткиОстаткиИОбороты
	|ГДЕ
	|	СвободныеОстаткиОстаткиИОбороты.Регистратор = &Регистратор
	|	И СвободныеОстаткиОстаткиИОбороты.КоличествоКонечныйОстаток < 0";

Проверка на отрицательные остатки.....

timm00 timm00, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
Если ЗначениеЗаполнено(Подразделение.Родитель.Родитель.Родитель) Тогда
		ВышестоящееПодразделение = Подразделение.Родитель.Родитель.Родитель;
	ИначеЕсли ЗначениеЗаполнено(Подразделение.Родитель.Родитель) Тогда
		ВышестоящееПодразделение = Подразделение.Родитель.Родитель;
	ИначеЕсли ЗначениеЗаполнено(Подразделение.Родитель) Тогда
		ВышестоящееПодразделение = Подразделение.Родитель;
	Иначе ВышестоящееПодразделение = Подразделение;
	КонецЕсли;

Найдем максимально вышестоящее подразделение, ну, до поры - до времени максимальное..

Stipa Stipa, (Updated )

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

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

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
&НаКлиенте
Процедура ИмяФайла_ПроизводственнаяПрограммаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
	ДиалогВыборФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
	ДиалогВыборФайла.Фильтр = "Файлы Microsoft Excel (*.xls, *.xlsx, *.xlsm)|*.xls; *.xlsx; *.xlsm|Все файлы (*.*)|*.*";
	ДиалогВыборФайла.Показать(Новый ОписаниеОповещения("ИмяФайла_ПроизводственнаяПрограммаНачалоВыбораЗавершение", ЭтотОбъект, Новый Структура("ДиалогВыборФайла,ИмяФайла", ДиалогВыборФайла, Элемент.Имя)));
КонецПроцедуры

&НаКлиенте
Процедура ИмяФайла_ПроизводственнаяПрограммаНачалоВыбораЗавершение(ВыбранныеФайлы, ДополнительныеПараметры) Экспорт
    
    ДиалогВыборФайла = ДополнительныеПараметры.ДиалогВыборФайла;
    
    Если (ВыбранныеФайлы <> Неопределено) Тогда
        ЭтаФорма[ДополнительныеПараметры.ИмяФайла] = ДиалогВыборФайла.ПолноеИмяФайла;
    КонецЕсли;

КонецПроцедуры

Асинхронные вызовы??? Нее.... Не слышал...

nytlenc nytlenc, (Updated )

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

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

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
&НаСервереБезКонтекста
Функция ПроверкаНаРукожопость1()
	
	ГруппаЮзеровРСЧ = Справочники.ГруппыПользователей.НайтиПоНаименованию("Отдел расчёта сотрудников");
	ЮзерыРСЧ = ГруппаЮзеровРСЧ.Состав.ВыгрузитьКолонку("Пользователь");
	
	ТекущийЮзер = Пользователи.ТекущийПользователь();
	//Если ТекущийЮзер = ЮзерыРСЧ.Найти(ТекущийЮзер) Тогда
	НайденныеЮзеры = ЮзерыРСЧ.Найти(ТекущийЮзер);
	Если (НайденныеЮзеры) <> Неопределено Тогда
		Возврат ИСТИНА;
	Иначе
		Возврат ЛОЖЬ;
	КонецЕсли
	
КонецФункции



&НаКлиенте
Процедура ПриОткрытииПосле(Отказ)
	
	//ПроверкаНаРукожопость(ЭтотОбъект);
	
	//Если РольДоступна("Расчетчик") Тогда
	//	Объект.Дата.Доступность = ЛОЖЬ;
	//КонецЕсли;
	
	Если ПроверкаНаРукожопость1() Тогда
		ЭтотОбъект.Элементы.Дата.Доступность = ЛОЖЬ;
		ЭтотОбъект.Элементы.Номер.Доступность = ЛОЖЬ;
		ЭтотОбъект.Элементы.НомерПриказа.Доступность = ЛОЖЬ;
	КонецЕсли;

КонецПроцедуры

Шобы не рукоблудили шелудивые бухгалтерши

Stipa Stipa, (Updated )

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

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

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
Функция РазрешеноМенятьЗаявкуПоПравилу9Утра()    
	
 	_Год    = Год  ( Объект.Дата);
	_Месяц  = Месяц( Объект.Дата);
	_День   = День ( Объект.Дата) + 1;
	
	Если _День = 29 Тогда
		Если _Месяц = 2 Тогда
			
			Если (_Год - 2016)%4 <> 0 Тогда	
				
				_Месяц = 3; _День = 1;
			КонецЕсли;  
		КонецЕсли;
	КонецЕсли;
	
	Если _День = 30 Тогда
		Если (_Месяц = 4) ИЛИ (_Месяц = 6) ИЛИ (_Месяц = 9) ИЛИ (_Месяц = 11) Тогда
			
			_Месяц = _Месяц + 1;
			_День  = 1;
		КонецЕсли;
	КонецЕсли;
	
	Если _День = 31 Тогда
		Если (_Месяц = 1) ИЛИ (_Месяц = 3) ИЛИ (_Месяц = 5) ИЛИ (_Месяц = 7) ИЛИ
			(_Месяц = 8)        Тогда
			
			_Месяц = _Месяц + 1;
			_День  = 1;
		ИначеЕсли _Месяц = 12  Тогда
			
			_Месяц = 1;
			_День  = 1; 
		КонецЕсли;
	КонецЕсли;
	
	_9УтраСледующегоДня = Дата( _Год , _Месяц, _День,9,0,0);
	
	Если ТекущаяДата() < _9УтраСледующегоДня Тогда
		
		Возврат Истина;
	Иначе
		
		Возврат Ложь;
	КонецЕсли;
	  
КонецФункции

По-моему, достойно Вашего внимания ;)

ShilkovNikolay ShilkovNikolay, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
Функция ВнешнийОтчетВФоновомЗадании(НаимРеглОтч)
	...
		ИмяОбработки = ВнешниеОтчеты.Подключить(АдресВоВременномХранилище, , Ложь);
		Возврат ВнешниеОтчеты.Создать(ИмяОбработки, Истина);
	...
КонецФункции

В фоновом задании создаем внешний отчет с БезопасныйРежим=Истина. Вопрос, типа, "предупреждение безопасности, разрешить открывать данный файл?", конечно, никому не выходит. Итог для пользователя - ошибка. Что за звездец! Как можно задавать вопрос в фоновом? Зачем? ЗУП 3.1 типовая

sandvich sandvich, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
Если Число(Сред(Строка(НачПериода),4,2)) <> Число(Сред(Строка(КонПериода),4,2)) Тогда
	Предупреждение("Нельзя брать период с разными месяцами!!!");
	Возврат;
КонецЕсли;

Мне так не дано писать код :-)

Asinto Asinto, (Updated )

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