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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
Если НЕ Докум.ПроверенноБухгалтером Тогда
	ЧихПых = Истина;     // подмена контрагента на НЕПРОВЕРЕНО БУХОМ
Иначе
	ЧихПых = Ложь;
КонецЕсли;

Вот такой вот фокус от программистов для бухгалтеров.

koshak84 koshak84, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
Функция ПроверкаОснДаты(Конт,Текст) Экспорт
	Попытка	Дат=Конт.ДатаОперации;
	Исключение
		Попытка		Дат=Конт.ДатаДок;
		Исключение	Дат='';	КонецПопытки;
	КонецПопытки;
	Если Дат<Константа.ОснДатаГл Тогда
		ДействиеНеВыполнено(Шаблон("[Текст]. Период закрыт"));
	КонецЕсли;
	Возврат СтатусВозврата();
КонецФункции

Terrible Terrible, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
//если период поселения не соотв. порядку дат - забьем пустые клетки
~нах:	Если НачалоДня(выбГруппаПериод.периодГРуппа)>НачалоДня(ТекДатаШ) Тогда
		ВывестиПустоеМесто(Выбмест.Место,ТекДатаШ);
		Перейти ~нах;
	КонецЕсли;

Меток не видел со времён изучения ассемблера... Это ужас... Хотя переходят верно =)

gavrick gavrick, (Updated )

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

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

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
function iofam(val a)
var fio[3];
fio[1]=""; fio[2]=""; fio[3]="";
a=trimall(a);
while strcountoccur(a,"  ")>0 do
  a=strreplace(a,"  "," ");
enddo;
i=1;
while (strcountoccur(a," ")>0) and (i<=2) do
  fio[i]=left(a,find(a," ")-1);
  a=right(a,strlen(a)-1-strlen(fio[i]));
  i=i+1;
enddo;
fio[i]=a;
return (left(fio[2],1)+"."+left(fio[3],1)+". "+fio[1]);
endfunction

int1789 int1789, (Updated )

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

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

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
Функция ПреобразованиеДаты(Дата) Экспорт
Если НЕ ПустаяСтрока(Дата) Тогда	
	ГодКраткий = Прав(Дата, 2);
	Если 		ГодКраткий = "83" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1983";		
		ИначеЕсли   ГодКраткий = "84" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1984";
		ИначеЕсли   ГодКраткий = "85" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1985";	
		ИначеЕсли   ГодКраткий = "86" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1986";	
		ИначеЕсли   ГодКраткий = "87" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1987";	
		ИначеЕсли   ГодКраткий = "88" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1988";	
		ИначеЕсли   ГодКраткий = "89" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1989";	
		ИначеЕсли   ГодКраткий = "90" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1990";	
		ИначеЕсли   ГодКраткий = "91" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1991";	
		ИначеЕсли   ГодКраткий = "92" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1992";	
		ИначеЕсли   ГодКраткий = "93" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1993";	
		ИначеЕсли   ГодКраткий = "94" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1994";	
		ИначеЕсли   ГодКраткий = "95" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1995";	
		ИначеЕсли   ГодКраткий = "96" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1996";	
		ИначеЕсли   ГодКраткий = "97" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1997";	
		ИначеЕсли   ГодКраткий = "98" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1998";	
		ИначеЕсли   ГодКраткий = "99" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "1999";	
		ИначеЕсли   ГодКраткий = "00" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2000";	
		ИначеЕсли   ГодКраткий = "01" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2001";	
		ИначеЕсли   ГодКраткий = "02" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2002";	
		ИначеЕсли   ГодКраткий = "03" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2003";	
		ИначеЕсли   ГодКраткий = "04" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2004";	
		ИначеЕсли   ГодКраткий = "05" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2005";	
		ИначеЕсли   ГодКраткий = "06" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2006";	
		ИначеЕсли   ГодКраткий = "07" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2007";	
		ИначеЕсли   ГодКраткий = "08" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2008";	
		ИначеЕсли   ГодКраткий = "09" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2009";	
		ИначеЕсли   ГодКраткий = "10" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2010";	
		ИначеЕсли   ГодКраткий = "11" Тогда
			ДатаНовая = "" + Лев(Дата,6) + "2011";					
		КонецЕсли;

ДатаЗначение = Дата(Сред(ДатаНовая,7,4),Сред(ДатаНовая,4,2),Сред(ДатаНовая,1,2));	
Возврат ДатаЗначение;	
КонецЕсли;
КонецФункции

Прихожу сегодня с утра и вижу вот такой код коллеги. Надо теперь психологически восстанавливаться.

i-ale i-ale, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
Попытка
			Если Число(ДисконтнаяКарта.НомерКарты) >= 111065251 И Число(ДисконтнаяКарта.НомерКарты) <= 111065453 И  ПревышенаСуммаДисконта() Тогда 
				Отказ = Истина;
				Сообщить("Сумма дисконта превышает оставшийся лимит по карте!",СтатусСообщения.Важное);
				Возврат
			КонецЕсли;
		Исключение
		КонецПопытки;

glavdir glavdir, (Updated )

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

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

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
////////////////////////////////////////////////////////////////////
	////////Преобразование горизонтали в вертикаль с дурацким циклом////
	///////////////////////////////////////////////////////////////////
	
	ТекДата = ТекущаяДата();	
	ТекущийГод = НачалоГода(ТекДата);
	ТекущийМесяц = НачалоМесяца(ТекДата);
	
	Пока Выборка.Следующий() Цикл
		
		ДатаЯнварь = ТекущийГод;
		Если    ДатаЯнварь >= ТекущийМесяц Тогда
			Январь = ПланПост.Добавить();
			Январь.Организация =Выборка.Организация;
			Январь.Расход = Выборка.ПродажиЯнварь;
			Январь.НормОст = Выборка.ОстаткиФевраль; 
			Январь.МесяцПрихода =  ТекущийГод;
		КонецЕсли;
		
		ДатаФевраль =  ДобавитьМесяц(ТекущийГод, 1);
		Если    ДатаФевраль >= ТекущийМесяц Тогда
			Февраль = ПланПост.Добавить();
			Февраль.Организация =Выборка.Организация;
			Февраль.Расход = Выборка.ПродажиФевраль;
			Февраль.НормОст = Выборка.ОстаткиМарт;
			Февраль.МесяцПрихода = ДатаФевраль;
		КонецЕсли;
		
		ДатаМарт = ДобавитьМесяц(ТекущийГод, 2);
		Если    ДатаМарт >= ТекущийМесяц Тогда
			Март = ПланПост.Добавить();
			Март.Организация =Выборка.Организация;
			Март.Расход = Выборка.ПродажиМарт;
			Март.НормОст = Выборка.ОстаткиАпрель;
			Март.МесяцПрихода = ДатаМарт; 
		КонецЕсли;
		
		ДатаАпрель = ДобавитьМесяц(ТекущийГод, 3);
		Если    ДатаАпрель >= ТекущийМесяц Тогда
			Апрель = ПланПост.Добавить();
			Апрель.Организация =Выборка.Организация;
			Апрель.Расход = Выборка.ПродажиАпрель;
			Апрель.НормОст = Выборка.ОстаткиМай;
			Апрель.МесяцПрихода =  ДатаАпрель;
		КонецЕсли;
		
		ДатаМай =  ДобавитьМесяц(ТекущийГод, 4);
		Если    ДатаМай >= ТекущийМесяц Тогда
			Май = ПланПост.Добавить();
			Май.Организация =Выборка.Организация;
			Май.Расход = Выборка.ПродажиМай;
			Май.НормОст = Выборка.ОстаткиИюнь;
			Май.МесяцПрихода = ДатаМай;  
		КонецЕсли;

Была ТЧ в документе с колонками-названиями месяцев....И руководство поставило задачу вывести ЭТО в отчет...На СКД....

Necessitudo Necessitudo, (Updated )

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

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

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

ШЕДЕВР!
Конечно, база данных ведь запоминает, что мы элементы формы сделали недоступными...

mrbus mrbus, (Updated )

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