Вопрос № 60934: Уважаемые эксперты :)
Подскажите пожалуйста начинающему коллеге... Пишу обработку... нужно изменить один на другой (перечисление) реквизит табличной части документа...
Пока получилось вот что -
ДокПТ = СоздатьОбъект("Документ.Поступ...Вопрос № 60997: Здравствуйте.
У нас такая задача.
нужно написать большую прогу с нуля
я работал только с 7.7
насколько целесообразно изучать 8 и писать на ней
как 8 работает с SQL по сравнению с 7 ?
...
Вопрос № 60.934
Уважаемые эксперты :)
Подскажите пожалуйста начинающему коллеге... Пишу обработку... нужно изменить один на другой (перечисление) реквизит табличной части документа...
Пока получилось вот что -
ДокПТ = СоздатьОбъект("Документ.ПоступлениеТоваров");
ДокПТ.ВыбратьДокументы( ДатаНач , ДатаКон );
Пока ДокПТ.ПолучитьДокумент() = 1 Цикл
Если (ДокПТ.Проведен() = 0) и (ДокПТ.КоличествоСтрок()>0) Тогда
ДокПТ.ВыбратьСтроки()
Пока ДокПТ.ПолучитьСтроку()>0 Цикл
Если ДокПТ.Номенклатура Тогда
А вот как дальше обратится к нужному реквизиту, скажем - "ТипТоваров" и изменить его значение? Что-то никак не могу понять :(
Заранее, с привеликой благодарностью :)
Потом (когда прошел все строки документА) обязательно надо не забыть стороку
ДокПт.Записать();
Иначе все изменения пропадут как только перейдешь к следующему документу выборки. А может еще нужно и перепровести (по обстоятельствам):
ДокПт.Провести();
--------- Мирный атом в КАЖДЫЙ дом!
Ответ отправил: Elric (статус: Практикант)
Ответ отправлен: 01.11.2006, 17:13 Оценка за ответ: 5 Комментарий оценки: Огромная благодарность:) Я просто счастлив :) Ответившему эксперту "Elric" - всех благ :)
Отвечает: Гребиников Павел Генадьевич
Здравствуйте, Вячелсав Б.!
Вопрос не совсем понятен, по-моему вам требуется что-то типа:
Если ДокПТ.Номенклатура=перечисление.типтоваров.первыйтип тогда
...............
--------- Плох тот юзер, который не мечтает стать админом...
Ответ отправил: Гребиников Павел Генадьевич (статус: 4-ый класс)
Ответ отправлен: 02.11.2006, 07:08 Оценка за ответ: 4
Отвечает: Karanskiy Arkadiy
Здравствуйте, Вячелсав Б.!
Чтобы изменить реквизит в том документе, необходимо просто дописать например строку
Пока ДокПТ.ПолучитьСтроку()>0 Цикл
Если ДокПТ.Номенклатура.Вид = "Товары" Тогда
ДокПТ.ТипТовара = "Товар";
ИначеЕсли ДокПТ.Номенклатура.Вид = "Услуги"
ДокПТ.ТипТовара = "Услуга";
КонецЕсли;
КонецЦикла;
Но если это модуль какого-нибудь другого документа и вы хотите просто перенести данные и именно в этом документе надо указать "ТипТоваров", тогда это можно сделать след. оразом:
Пока ДокПТ.ПолучитьСтроку()>0 Цикл
Если ДокПТ.Номенклатура.Вид = "Товары" Тогда
НоваяСтрока();
Номенклатура = ДокПТ.Номенклатура;
ТипТовара = "Товар";
ИначеЕсли ДокПТ.Номенклатура.Вид = "Услуги"
НоваяСтрока();
Номенклатура = ДокПТ.Номенклатура;
ТипТовара = "Товар";
КонецЕсли;
КонецЦикла;
Успехов...
Ответ отправил: Karanskiy Arkadiy (статус: 4-ый класс)
Ответ отправлен: 05.11.2006, 18:18
Вопрос № 60.997
Здравствуйте.
У нас такая задача.
нужно написать большую прогу с нуля
я работал только с 7.7
насколько целесообразно изучать 8 и писать на ней
как 8 работает с SQL по сравнению с 7 ?
Отправлен: 02.11.2006, 08:30
Вопрос задал: Olov11 (статус: Посетитель)
Всего ответов: 5 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Зайцев Александр
Здравствуйте, Olov11!
Если писать что-то большое с нуля, то лучше писать на том что знаешь, хотя 8 изучать надо, раньше или позже все-равно большинство перейдет на нее
8 + сиквел работает на том же уровне что и 7, хотя сама по себе 8-ка - тормоз, требует больше ресурсов
Ответ отправил: Зайцев Александр (статус: 9-ый класс)
Ответ отправлен: 02.11.2006, 08:41
Отвечает: IUnknown
Здравствуйте, Olov11!
вопрос чисто риторический... да и из разряда религиозных...
скажу чисто свое мнение, ни чем его не обосновывая... так сравнить эти две платформы нельзя... абсалютно разные идеологии
7.7 уже хорошо изучена, баги если не исправлены то хорошо известны...
отличное знание 7.7 может на порядок оптимизировать приложение...
эксплуатация 7.7 обходится на порядок дешевле 8.0... тем более скульных вариантов
--------- я не специалист
Ответ отправил: IUnknown (статус: 7-ой класс)
Ответ отправлен: 02.11.2006, 08:45
Отвечает: Шутяев Игорь
Здравствуйте, Olov11!
Два больших преимущества 1с8: 1) гораздо более мощный и гибкий язык и 2) перспектива, 77 умрет раньше :-) Минус один: его надо учить, знание 77 где-то поможет, но в основном будет сильно мешать. 1с8 имеет весьма развитую объектную структуру, не сравнить с зачаточной и путаной структурой 77. Но, имхо, через это надо пройти, и чем раньше, тем лучше. Могу посоветовать книги:
Радченко. 1С:Предприятие 8.0. Практическое пособие разработчика. (очень хорошо для начинающего)
Митичкин. Разработка в системе 1С:Предприятие 8.0. (для начинающих не очень хорошо, но потом будет весьма полезно)
Габец, Гончаров. 1С:Предприятие 8.0. Простые примеры разработки (FAQ с кучей примеров)
Габец, Гончаров, etc. Профессиональная разработка в системе 1С:Предприятие 8.0 (не видел, но судя по всему, книга фундаментальная :-)
С SQL не работал...
Как итог: на 77 стоит писать только небольшую программу, которую не предполагается сильно развивать в дальнейшем. Просто потому, что для вас будет заметно быстрее.
Ответ отправил: Шутяев Игорь (статус: 3-ий класс)
Ответ отправлен: 02.11.2006, 08:51
Отвечает: Тимофеев Андрей
Здравствуйте, Olov11!
Я бы рекомендовал Вам взятся за изучение 8-ки.
У восьмерки требования побольше будут к аппаратной части, но работает быстрее и стабильнее.
Ответ отправил: Тимофеев Андрей (статус: 1-ый класс)
Ответ отправлен: 02.11.2006, 11:07
Отвечает: Karanskiy Arkadiy
Здравствуйте, Olov11!
Я думаю, что целесообразно конечно изучить 8-ку. Т.к. показатели ее по скорости имеено с большим числом элементов потрясают. Их можно посмотреть на официальном сайте 1С.
Ответ отправил: Karanskiy Arkadiy (статус: 4-ый класс)
Ответ отправлен: 05.11.2006, 18:11