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

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
&НаКлиенте
Процедура ПриЗакрытии()
	ПроверитьНаОткрытие()
КонецПроцедуры

&НаСервере 
Процедура ПроверитьНаОткрытие() 
	Если Объект.Исполнитель =ПараметрыСеанса.ТекущийПользователь() И Не Объект.Просмотрено = Истина Тогда
		Задача = Объект.Ссылка.ПолучитьОбъект();
		Задача.Просмотрено = Истина;
		Задача.Записать();
	КонецЕсли;
КонецПроцедуры

cdpoma cdpoma, (Updated )

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

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

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
//Тут был код

//!Проверки на корректность данных.
		ИначеЕсли (Строка(Лист.Cells(Счетчик,8).value) = "") ИЛИ (Строка(Лист.Cells(Счетчик,8).value) = "") ИЛИ ((Лист.Cells(Счетчик,8).value) = 0) ИЛИ ((Лист.Cells(Счетчик,8).value) = 0)  Тогда
			Сообщить("У номенклатуры в строке №"+Счетчик+" не хватает данных по ценам! Позиция не добавлена!", СтатусСообщения.Важное);
		ИначеЕсли ((Лист.Cells(Счетчик,8).value) < 0) ИЛИ ((Лист.Cells(Счетчик,8).value) < 0) Тогда 
			Сообщить("У номенклатуры в строке №"+Счетчик+" отрицательная цена! Позиция не добавлена!", СтатусСообщения.Важное);
		Иначе
			Мас.Добавить(Строка(Лист.Cells(Счетчик, 1).value));
			ЭлементСправочника = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Строка(Лист.Cells(Счетчик, 1).value));


//Там дальше код

Фрагмент обработки найден в конфиге клиента. До фрагмента - открытие файла excel. После - распихивание данных с него по регистрам. Гениальная проверка на корректность гениальна.

CreatorOfBullshit CreatorOfBullshit, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
ВнутреннийКодДокумента=Лев(ФайлКаталога.Имя,Найти(ФайлКаталога.Имя,"_")-1);
ВнутреннийКодДокумента=Формат(Число(ВнутреннийКодДокумента),"ЧЦ=9;ЧВН=");
ВнутреннийКодДокумента=СтрЗаменить(ВнутреннийКодДокумента," ","");
СсылкаНаВходящийДокумент=Справочники.ВходящиеДокументы.НайтиПоКоду(ВнутреннийКодДокумента);

получает имя файла например 122341_20101207201000.pdf и ищет по коду в справочники с лидирующими нулями, если кто то может предложить лучше предложение, то я буду только рад)

cdpoma cdpoma, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
Если (ШаблонПроводки.Наименование = "Распределять пропорционально расчетной базе") Тогда
	МожноПроводить = 0;
	Сообщить(НазваниеДока+"неверно указан шаблон проводки", "!");

Это так профессионально, сравнивать строки...

1_and_0 1_and_0, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
Перем ВидНДС;

.......................................................................................................................
	
	Если ВыбВидНДС = Перечисление.ВидыНДС.Реализация Тогда
		ВидНДС = Перечисление.ВидыНДС.Реализация;
	ИначеЕсли ВыбВидНДС = Перечисление.ВидыНДС.Авансы Тогда
		ВидНДС = Перечисление.ВидыНДС.Авансы;
	КонецЕсли;

ВыбВидНДС - реквизит формы.

antz antz, (Updated )

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

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

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

Процедура для присвоения Кода новому элементу справочника. Из одной серьезной официальной конфигурации.

nickkk nickkk, (Updated )

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

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

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
Родит=ДокР.Контрагент.Родитель; 
Если ПустоеЗначение(Родит.Телефон)=1 Тогда
    Родит1=Родит.Родитель;
	Если ПустоеЗначение(Родит1.Телефон)=1 Тогда
	    Родит2=Родит1.Родитель;
			Если ПустоеЗначение(Родит2.Телефон)=1 Тогда
			     Родит3=Родит2.Родитель;
				 ТЗДок.Тел=Родит3.Телефон;
			Иначе
		    	ТЗДок.Тел=Родит2.Телефон;
			КонецЕсли;        
	Иначе
	     ТЗДок.Тел=Родит1.Телефон;
	КонецЕсли;            
Иначе
	ТЗДок.Тел=Родит.Телефон;
КонецЕсли;

ingenuus ingenuus, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
ПолучитьСтроку();
Пока КоличествоСтрок() <> 0 Цикл
	УдалитьСтроку();
КонецЦикла;

Новый способ удаления всех строк из документа. Похоже, что разработчик не ведает о существовании метода УдалитьСтроки();

SSNick SSNick, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
Если Конт.Сумма <> КонтСумма Тогда
    Конт.Сумма = КонтСумма;
КонецЕсли;

Встретил в типовой конфигурации одной из небольших фирм-франчайзи. Много думал ...

SSNick SSNick, (Updated )

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

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

0

  1. 1
  2. 2
  3. 3
  4. 4
ПЦ = 0;
	Пока ПЦ<10000 Цикл
		ПЦ = ПЦ + 1;
	КонецЦикла;

1С 7.7 Регламентированные отчеты за 2 квартал 2010 года, "декларация НДС"
Зачем эта вставка, не понятно, может что бы помедленней работало?

roavenik roavenik, (Updated )

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