Отправляет email-рассылки с помощью сервиса Sendsay

RFpro.ru: 1С для программиста

  Все выпуски  

RusFAQ.ru: 1С для программиста


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / 1С для программиста

Выпуск № 334
от 30.10.2006, 09:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 276, Экспертов: 35
В номере:Вопросов: 3, Ответов: 13


Вопрос № 59999: Здраствуйте уважаемые Эксперты 1С! Подскожите пожайлуста что в этом коде (см. ниже) не так? //------------------------------------------------------------// СпрНоменклатура = СоздатьОбъект("Справочник.Номенклатура"); ...
Вопрос № 60037: У нас в программе Т+С точка актуальности стоит на 11.10.06 это произошло после группового проведения документов, как я могу перенести точку актуальности на текущую дату или на последний не проведенный документ, у меня выходит сообщение "Суще...
Вопрос № 60109: У меня проблема, мне нужно выгрузить остатки из 1С, выгружаю в *.html и *.mxl, в XLS - не выгружается(зависает) файл mxl размером в 3.75 мегабайт, не открывается, html размером 2.94 мегабайт открывается, но мне нужен именно формат ексель, не знаю...

Вопрос № 59.999

Здраствуйте уважаемые Эксперты 1С!
Подскожите пожайлуста что в этом коде (см. ниже) не так?
//------------------------------------------------------------//
СпрНоменклатура = СоздатьОбъект("Справочник.Номенклатура");
СпрНоменклатура.ИспользоватьРодителя(грпПериферия);

СпрНоменклатура.Новый();
СпрНоменклатура.Наименование = "Принтер";
СпрНоменклатура.Записать();
//------------------------------------------------------------//

Выдает следующую ошибку:

СпрНоменклатура.ИспользоватьРодителя(грпПериферия<<?>>);
{Документ.ЧтенНоменкл.Форма.Модуль(4)}: Переменная не определена (грпПериферия)

Пробовал и ГруппаПериферия и Просто Периферия.

1С 7.7 редакция 9.2
Отправлен: 24.10.2006, 09:39
Вопрос задал: DnBCoder (статус: Посетитель)
Всего ответов: 7
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Manserg
Здравствуйте, DnBCoder!
Ничего кроме того, что "грпПериферия" не определена выше это и не означает, передайте в эту переменную нужный элемент справочника(группу).
Ответ отправил: Manserg (статус: 5-ый класс)
Ответ отправлен: 24.10.2006, 09:52

Отвечает: Зайцев Александр
Здравствуйте, 1!
Если я правильно понял то надо использовать группу, которая называется "Периферия", то перед описанным блоком добвавьте строки
грпПерифирия = СоздатьОбъект("Справочник.Номенклатура");
грпПериферия.НайтиЭлемент("Периферия");
//или грпПереферия.НайтиПоНаименованию("Периферия");
Если я вопрос понял неправильно, то сигнальте на пейджер - помогу
Ответ отправил: Зайцев Александр (статус: 7-ой класс)
Ответ отправлен: 24.10.2006, 10:01

Отвечает: Шальков Павел Владимирович
Здравствуйте, DnBCoder!
Вы должны определить эту переменную в модуле или создать реквизит диалога с таким именем. В случае с переменной:
грПериферия = СоздатьОбъект("Справочник.<ВашСправочник>");
грПериферия.НайтиПоНаименованию("Периферия");
...

В случае реквизита диалога, можете использовать синтаксис, который вы указали в вопросе: ...использоватьвладельца...
Ответ отправил: Шальков Павел Владимирович (статус: 8-ой класс)
Ответ отправлен: 24.10.2006, 10:02

Отвечает: IUnknown
Здравствуйте, 1!
ну как ясно из ошибки то у тебя не определена переменная грпПериферия

надо перед строкой СпрНоменклатура.ИспользоватьРодителя(грпПериферия); написать что-то типа грпПерефирия = "";

хотя если судить из кода то тебе надо записыать элементы в определенную группу... тогда надо изменить на что-то вроде этого

СпрНоменклатура.НайтиПоКоду(КодНужногоРодителя);
грпПерефирия = СпрНоменклатура.ТекущийЭлемент();
---------
я не специалист
Ответ отправил: IUnknown (статус: 7-ой класс)
Ответ отправлен: 24.10.2006, 10:05

Отвечает: Гребиников Павел Генадьевич
Здравствуйте, DnBCoder!
А у вас есть такой реквизит грпПериферия, если нет, тогда из-за отсутствия этого реквизита ошибка и выдается. А ввобще для чего вам использовать родителя: этот код устанавливает выборку для группы справочников. может правильнее будет установить родителя для данного элемента справочника:

Приложение:

---------
Плох тот юзер, который не мечтает стать админом...

Ответ отправил: Гребиников Павел Генадьевич (статус: 4-ый класс)
Ответ отправлен: 24.10.2006, 10:26

Отвечает: Краюшкин Игорь Валерьевич
Здравствуйте, 1!

У Вас не определен элемент справочника. Необходимо действовать так:
грпПериферия = СоздатьОбъект("Справочник.Номенклатура");
грпПериферия.НайтиПоНаименованию("Здесь пишете наименование Вашей группы");
а уж дальше идет Ваш код.
Ответ отправил: Краюшкин Игорь Валерьевич (статус: 5-ый класс)
Ответ отправлен: 24.10.2006, 12:32

Отвечает: Karanskiy Arkadiy
Здравствуйте, DnBCoder!
У Вас точно не определенная переменная "грпПереферия". Эта переменная должна содержать название группы, куда будет помещен новый элемент. Присвойте ей значение, до использования метода ИспользоватьРодителя().
Ответ отправил: Karanskiy Arkadiy (статус: 4-ый класс)
Ответ отправлен: 24.10.2006, 13:41


Вопрос № 60.037
У нас в программе Т+С точка актуальности стоит на 11.10.06
это произошло после группового проведения документов, как я могу перенести точку актуальности на текущую дату или на последний не проведенный документ, у меня выходит сообщение "Существуют более ранние проведенные документы"
Я же не могу распровести такое огромное количество как у нас документов в 1С?
Отправлен: 24.10.2006, 14:31
Вопрос задал: Терсков Алексей Николаевич (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Зайцев Александр
Здравствуйте, 1!
В монопольном режиме зайдите Операции/Управление оперативными итогами
поставьте дату актуальности итогов на необходимую вам и нажмите установить справа
На вопрос - изменить точку актуальности итогов ответьте - да
Нажмите - выполнить
Все
Ответ отправил: Зайцев Александр (статус: 7-ой класс)
Ответ отправлен: 24.10.2006, 14:40
Оценка за ответ: 5
Комментарий оценки:
Спасибо большое вам!
Как я иногда люблю этот форум! :)

Отвечает: Краюшкин Игорь Валерьевич
Здравствуйте, 1!

Нужно зайти в программу в монопольном режиме (желательно с правами администратора).
Открыть общий журнал документов.
Встать на последний проведенный документ, помеченный черной галочкой.
Щелчок правой кнопкой мыши на этом документе и, в контекстном меню, нажать "Установить ТА на документ".
Далее просто кликать ОК.
Ответ отправил: Краюшкин Игорь Валерьевич (статус: 5-ый класс)
Ответ отправлен: 24.10.2006, 18:13
Оценка за ответ: 5


Вопрос № 60.109
У меня проблема, мне нужно выгрузить остатки из 1С, выгружаю в *.html и *.mxl, в XLS - не выгружается(зависает)
файл mxl размером в 3.75 мегабайт, не открывается, html размером 2.94 мегабайт открывается, но мне нужен именно формат ексель, не знаю, как мне выгрузить и распечатать эти остатки, из 1С они не распечатываются ...
может кто подскажет, кто сталкивался с такой проблемой?
Отправлен: 25.10.2006, 07:26
Вопрос задал: Терсков Алексей Николаевич (статус: Посетитель)
Всего ответов: 4
Мини-форум вопроса >>> (сообщений: 7)

Отвечает: Зайцев Александр
Здравствуйте, 1!
Либо через внешний отчет
http://www.infostart.ru/projects/index.php?id=323&p_type=2
(самый быстрый вариант)
Либо прямой выгрузкой в Excel
ексель = СоздатьОбъект("Excel.Application");
и дальше выгружать все в файл (Если интересно сигналь на пейджер, но тоже достаточно долго)
Либо печать сразу на принтер
(только не понятно почему из 1с остатки не распечатываются, если таблица уже сформирована)
Ответ отправил: Зайцев Александр (статус: 7-ой класс)
Ответ отправлен: 25.10.2006, 07:44

Отвечает: Краюшкин Игорь Валерьевич
Здравствуйте, 1!

Сталкивался!!! В службе поддержки сказали, что они не знают о такой проблеме. Большие файлы mxl виснут, но решать эту проблему они отказываются. Мы тогда так и не нашли выхода, кроме как выгружать остатки по складам (слава богу было 5 складов).
А один эсники возмутили меня тогда сильно...
Ответ отправил: Краюшкин Игорь Валерьевич (статус: 5-ый класс)
Ответ отправлен: 25.10.2006, 09:47
Оценка за ответ: 5
Комментарий оценки:
А у нас два склада и товар весь, почти на одном!
Так что, проблему никак не решить?

Отвечает: Elric
Здравствуйте, Терсков Алексей Николаевич!

Проблема решается элементарно. Нужно действительно разбить 0остатки на несколько файлов. При этом не обязательно критерием должны быть склады -- просто ставим счетчик сколько строк уже выгружено в эксель и когда достигается критическая масса (около 65000 строк) автоматически создаем новый файл и продолжаем уже в нем.
---------
Мирный атом в КАЖДЫЙ дом!
Ответ отправил: Elric (статус: Практикант)
Ответ отправлен: 25.10.2006, 11:24
Оценка за ответ: 5
Комментарий оценки:
А как это сделать, если расскажете, то я буду очень вам благодарен...

Отвечает: Гребиников Павел Генадьевич
Здравствуйте, Терсков Алексей Николаевич!
У меня тоже такое было, если у вас есть код повтрорятьприпечатистроки() то уберите их

---------
Плох тот юзер, который не мечтает стать админом...
Ответ отправил: Гребиников Павел Генадьевич (статус: 4-ый класс)
Ответ отправлен: 28.10.2006, 16:03


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.37 от 04.10.2006
Яндекс Rambler's Top100

В избранное