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

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
Док.н212=ТекЛист.Cells(х,2).Text; 
Док.н213=ТекЛист.Cells(х,3).Text; 
Док.н214=ТекЛист.Cells(х,4).Text; 
Док.н215=ТекЛист.Cells(х,5).Text;; 
Док.н216=ТекЛист.Cells(х,6).Text; 
Док.н217=ТекЛист.Cells(х,7).Text;; 
Док.н218=ТекЛист.Cells(х,8).Text; 
Док.н219=ТекЛист.Cells(х,9).Text; 
Док.н220=ТекЛист.Cells(х,10).Text; 
Док.н221=ТекЛист.Cells(х,11).Text; 
Док.н222=ТекЛист.Cells(х,12).Text; 
Док.н223=ТекЛист.Cells(х,13).Text; 
Док.н224=ТекЛист.Cells(х,14).Text; 
Док.н225=ТекЛист.Cells(х,15).Text; 
Док.н226=ТекЛист.Cells(х,16).Text; 
Док.н227=ТекЛист.Cells(х,17).Text; 
Док.н228=ТекЛист.Cells(х,18).Text; 
Док.н229=ТекЛист.Cells(х,19).Text; 
Док.н230=ТекЛист.Cells(х,20).Text; 
Док.н231=ТекЛист.Cells(х,21).Text; 
Док.н232=ТекЛист.Cells(х,22).Text; 
Док.н233=ТекЛист.Cells(х,23).Text; 
Док.н234=ТекЛист.Cells(х,24).Text; 
Док.н235=ТекЛист.Cells(х,25).Text; 
Док.н236=ТекЛист.Cells(х,26).Text; 
Док.н237=ТекЛист.Cells(х,27).Text; 
Док.н238=ТекЛист.Cells(х,28).Text; 
Док.н239=ТекЛист.Cells(х,29).Text; 
Док.н240=ТекЛист.Cells(х,30).Text; 
Док.н241=ТекЛист.Cells(х,31).Text; 
Док.н242=ТекЛист.Cells(х,32).Text; 
Док.н243=ТекЛист.Cells(х,33).Text; 
Док.н244=ТекЛист.Cells(х,34).Text; 
Док.н245=ТекЛист.Cells(х,35).Text; 
Док.н246=ТекЛист.Cells(х,36).Text; 
Док.н247=ТекЛист.Cells(х,37).Text; 
Док.н248=ТекЛист.Cells(х,38).Text; 
Док.н249=ТекЛист.Cells(х,39).Text; 
Док.н250=ТекЛист.Cells(х,40).Text; 
Док.н251=ТекЛист.Cells(х,41).Text; 
Док.н252=ТекЛист.Cells(х,42).Text; 
Док.н253=ТекЛист.Cells(х,43).Text; 
Док.н254=ТекЛист.Cells(х,44).Text; 
Док.н255=ТекЛист.Cells(х,45).Text; 
Док.н256=ТекЛист.Cells(х,46).Text; 
Док.н257=ТекЛист.Cells(х,47).Text; 
Док.н258=ТекЛист.Cells(х,48).Text; 
Док.н259=ТекЛист.Cells(х,49).Text; 
Док.н260=ТекЛист.Cells(х,50).Text; 
Док.н261=ТекЛист.Cells(х,51).Text; 
Док.н262=ТекЛист.Cells(х,52).Text; 
Док.н263=ТекЛист.Cells(х,53).Text; 
Док.н264=ТекЛист.Cells(х,54).Text; 
Док.н265=ТекЛист.Cells(х,55).Text; 
Док.н266=ТекЛист.Cells(х,56).Text; 
Док.н267=ТекЛист.Cells(х,57).Text; 
Док.н268=ТекЛист.Cells(х,58).Text; 
Док.н269=ТекЛист.Cells(х,59).Text;	

// ... 
// и так далее все реквизиты

Тот же программер с поиском даты заполняет реквизиты документа.

Ivon Ivon, (Updated )

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

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

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
Каталог=СокрЛП(ИмяКаталога); 

Цифры="0123456789"; 
Д=ТекущаяДата(); 
ДД=""; 
Стр=Каталог; 

х=Найти(Стр,"."); 
Если х>0 Тогда 
Символ1=Сред(Стр,х-2,1); 
Если Найти(Цифры,Символ1)>0 Тогда 
ДД=Символ1; 
КонецЕсли; 

Символ2=Сред(Стр,х-1,1); 
Если Найти(Цифры,Символ2)>0 Тогда 
ДД=ДД+Символ2+"."; 
КонецЕсли; 

Стр=Сред(Стр,х+1); 
КонецЕсли; 

х=Найти(Стр,"."); 
Если х>0 Тогда 
Символ1=Сред(Стр,х-2,1); 
Если Найти(Цифры,Символ1)>0 Тогда 
ДД=ДД+Символ1; 
КонецЕсли; 

Символ2=Сред(Стр,х-1,1); 
Если Найти(Цифры,Символ2)>0 Тогда 
ДД=ДД+Символ2+"."; 
КонецЕсли; 

Стр=Сред(Стр,х+1); 

Символ1=Лев(Стр,1); 
Если Найти(Цифры,Символ1)>0 Тогда 
ДД=ДД+Символ1; 
КонецЕсли; 

Символ2=Сред(Стр,2,1); 
Если Найти(Цифры,Символ2)>0 Тогда 
ДД=ДД+Символ2; 
КонецЕсли; 
КонецЕсли; 

Если СтрДлина(ДД)=8 Тогда 
Д=Дата(ДД); 
Сообщить(Д); 
КонецЕсли;

Вот нашел на одном из форумов. Программер ищет дату.

Ivon Ivon, (Updated )

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

Бухгалтерия / Говнокод #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)