powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / 1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
5 сообщений из 5, страница 1 из 1
1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
    #37705793
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.

Работал себе нормально экспорт оптового прайс-листа в текстовый файл, для сайта.
Сменили конфигурацию на 9.2, и на переписывание экспорта у приходящего 1С-специалиста видимо нет времени,
просят сделать все нас (web).

Ранее, когда была старая конфигурация, я вроде разобрался и сделал как смог такой вот экспорт (листинг 1).
(я с 1С никогда не работал, делал подобные экспорты если получалось, без обращения к 1С-поддержке).

Теперь что-то не въеду, что надо сделать, чтобы получить такой-же файл.
Кстати, сменились и коды продукции, но старые коды сохранены в отдельном поле,
имя поля со старым кодом к сожалению пока не знаю.
Старый код тоже нужен, чтобы автоматически поменять все коды на сайте.

Привожу код функции, что написал 1С-специалист (листинг 2).

Огромная просьба подсказать что к чему, весь код приводить не прошу.
Готов баш-на-баш что-нибудь сделать по JavaScript, чтобы все было честно.

Спасибо.

Листинг 1 -старый код - то,что работало ранее, в другой конфигурации (оптовые цены, и флаг смены цены за последние 30 дней).
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
Процедура Сайт()

	nStr=0;	RS=""; Group="0"; Gflag=0;

	спр = СоздатьОбъект("Справочник.Номенклатура");
	спрц = СоздатьОбъект("Справочник.Цены");

	спр.ВыбратьЭлементы();
	Пока спр.ПолучитьЭлемент()=1 Цикл
		
		Если спр.ПометкаУдаления()=1 Тогда Продолжить; КонецЕсли;

		если спр.ТекущийЭлемент().ЭтоГруппа()=1 тогда
			Group=СокрЛП(Спр.Код);
			Gflag=0;
			если Group="2" тогда Group=14; конецесли;
			если Group="18" тогда Group=14; конецесли;
//	Здесь еще разные условия, но это неважно
			если Group="14" тогда Gflag=1; конецесли;
			если Group="24" тогда Gflag=1; конецесли;
			если Group="26" тогда Gflag=1; конецесли;
			если Group="15" тогда Gflag=1; конецесли;
//	Здесь еще разные условия, но это неважно

		иначе
			Если Gflag=0 Тогда Продолжить; КонецЕсли;

			цена=0; флаг=0;
		
			спрц.ИспользоватьВладельца(спр);
			Цена=спр.ОптоваяЦена.Получить(РабочаяДата());
			Если цена<>спр.ОптоваяЦена.получить(РабочаяДата()-30) Тогда
			    флаг=1
			КонецЕсли;

			nStr=nStr+1;
			RS=RS+Строка(nStr)+chr(9)+Group+chr(9)+СокрЛП(Спр.Код)+chr(9)+СокрЛП(Спр.Наименование)+chr(9)+СокрЛП(Спр.Номер)+chr(9)+
				СокрЛП(Спр.БазоваяЕдиницаИзмерения)+chr(9)+СокрЛП(Формат(Цена,"Ч12.2."))+chr(9)+СокрЛП(Формат(флаг,"Ч1.0."))+chr(9)+chr(13)+chr(10);
		конецесли;

		состояние(" Строка : "+Строка(nStr));
		
	Конеццикла;

	Текст = СоздатьОбъект("Текст");
	Текст.ДобавитьСтроку(RS);
	Текст.Записать("export_to_site.txt");

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



Листинг 2 - новый (актуальный) код функции формирования прайс-листа. Делал 1С-специалист.
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
Процедура Прайс()
	//  Создание Таблицы для выходного отчета
	Таб=СоздатьОбъект("Таблица");
	Прс=СоздатьОбъект("Справочник.Номенклатура");
	цен=СоздатьОбъект("Справочник.Цены");

	ВыбТовар=ТекущийЭлемент();
	Если ВыбТовар.Выбран()=0 Тогда
		//Без условий
		Заг="По всем разделам.";
	Иначе
		Если ВыбТовар.Уровень()=1 Тогда
			Заг="По всем разделам.";
		Иначе
			Прс.ВключатьПодчиненные(1);
			Прс.ИспользоватьРодителя(ВыбТовар.Родитель);
			Заг="По товарам раздела "+ВыбТовар.Родитель.Наименование;
		КонецЕсли;
	КонецЕсли;
 	ЧислоСтрок=0;
 	Ном=0;
	Таб.ВывестиСекцию("Отчет");
	Прс.ВыбратьЭлементы();
	Пока Прс.ПолучитьЭлемент()>0 Цикл
		флаг=0;
		Если Прс.ПометкаУдаления()=1 Тогда
			Продолжить;
		КонецЕсли;
		Если Прс.ЭтоГруппа()=1 тогда
			Если Прс.Уровень()=1 Тогда
				Таб.ВывестиСекцию("Группа1");
			ИначеЕсли Прс.Уровень()=2 Тогда
				Таб.ВывестиСекцию("Группа2");
			Иначе
				Таб.ВывестиСекцию("Группа3");
			КонецЕсли;
		Иначе
			ПечРознЦенРуб=ФРМ(Пересчет(Прс.РозничнаяЦена.Получить(РабочаяДата()),Прс.ВалютаПродажи,РабочаяДата(),Рубли,РабочаяДата()),Рубли,1);
//			ПечМОптЦенРуб=ФРМ(Пересчет(прс.МелкооптоваяЦена.Получить(РабочаяДата()),прс.ВалютаПродажи,РабочаяДата(),Рубли,РабочаяДата()),Рубли,1);
			Ном=Ном+1;
			цен.ИспользоватьВладельца(прс);
			Если цен.найтипонаименованию(клиент.наименование)=1 Тогда
			цена=цен.цена.получить(РабочаяДата());
				Если цена<>цен.цена.получить(РабочаяДата()-30) Тогда
				    флаг=1
				КонецЕсли;
			иначе

			Если ТипЦен=Перечисление.ТипыРасхЦен.Розничные Тогда
				Цена=прс.РозничнаяЦена.Получить(РабочаяДата());
				Если цена<>прс.розничнаяцена.получить(РабочаяДата()-30) Тогда
				    флаг=1
				КонецЕсли;
			//ИначеЕсли   ТипЦен=Перечисление.ТипыРасхЦен.Мелко_оптовые Тогда
		    //    Цена=прс.Мел_Опт_Цена;
			ИначеЕсли   ТипЦен=Перечисление.ТипыРасхЦен.Оптовые Тогда
				Цена=Прс.ОптоваяЦена.Получить(РабочаяДата());
				Если цена<>прс.ОптоваяЦена.получить(РабочаяДата()-30) Тогда
				    флаг=1
				КонецЕсли;
			ИначеЕсли   ТипЦен=Перечисление.ТипыРасхЦен.Местный Тогда
				Цена=прс.Местный.Получить(РабочаяДата());
			   	Если цена<>прс.Местный.получить(РабочаяДата()-30) Тогда
				    флаг=1
				КонецЕсли;
			ИначеЕсли   ТипЦен=Перечисление.ТипыРасхЦен.Эндик Тогда
				Цена=прс.Эндик.Получить(РабочаяДата());
			   	Если цена<>прс.Эндик.получить(РабочаяДата()-30) Тогда
				    флаг=1
				КонецЕсли;
			ИначеЕсли   ТипЦен=Перечисление.ТипыРасхЦен.Пупкин Тогда
				Цена=прс.Пупкин.Получить(РабочаяДата());
			   	Если цена<>прс.Пупкин.получить(РабочаяДата()-30) Тогда
				    флаг=1
				КонецЕсли;
		    //ИначеЕсли   ТипЦен=Перечисление.ТипыРасхЦен.Челны Тогда
	        //   	Цена=прс.Челны;
			Иначе   Цена=прс.Розн_цена;
			КонецЕсли;
			конецесли;

			//ПечОптЦенРуб=ФРМ(Пересчет(прс.ОптоваяЦена.Получить(РабочаяДата()),прс.ВалютаПродажи,РабочаяДата(),Рубли,РабочаяДата()),Рубли,1);

			Если флаг=1 Тогда
				Таб.ВывестиСекцию("НоваяЦена");
			Иначе
			    Таб.ВывестиСекцию("Товар");
			КонецЕсли;
		КонецЕсли;
		Оживить(1);
	КонецЦикла;
	//Вызов выходного отчета в окно просмотра и редактирования.
	//Таб.ПовторятьПриПечатиСтроки(5,5);
	Таб.Опции(0,0,5,0,ПарСтрСпр);
	Таб.Защита(Константа.ФлагЗащитыТаблиц);
	Таб.ТолькоПросмотр(1);
	Таб.Показать("Прайс_лист","");
	ВыбТовар=0;

КонецПроцедуры
...
Рейтинг: 0 / 0
1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
    #37706073
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теперь цена реквизтт справочника гоменклаткра. Пл кожу плхоже что справочник цен не исподьзунтся.
ЗЫ Цена могла колебаться. Лучше использовать объект периодический для ее контроля.
ЗЫЫ Если база скульная, лычше тащите данные напрямую.
...
Рейтинг: 0 / 0
1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
    #37706104
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
100wmz, MD от конфигурации, поле где старый код.
...
Рейтинг: 0 / 0
1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
    #37711643
vadim-tmn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
asws,

Чет не пойму, в итоге что не работает второй листинг??)
...
Рейтинг: 0 / 0
1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
    #37714395
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо. Все получилось.
AHDP, если будут вопросы по JavaScript, постараюсь помочь.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / 1С 7.7 смена редакции на 9.2 - экспорт номенклатуры с ценами в текстовый файл.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]