Версия для печати темы (https://pro1c.org.ua/index.php?s=f9c2aff86f806fd8d977f0e86c3249f7&showtopic=67085)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 7.7 _ не могу передать значение с таблицы

Автор: 4andriy 23.09.22, 17:00

    КоличествоСтрок = спДанные.Получить("КоличествоСтрок");
    Для ном = 1 По КоличествоСтрок Цикл
        ТекСтрока = "R" + Прав("000" + ном,4);
        rsMain.Fields.Item("TAB1_A1").Value = ном;
        rsMain.Fields.Item("TAB1_NOMENKLATURA_NAME").Value = спДанные.Получить(ТекСтрока + "ТоварНаименование");
        rsMain.Fields.Item("TAB1_OV_NAME").Value = спДанные.Получить(ТекСтрока + "Единица");
        rsMain.Fields.Item("TAB1_A3").Value = спДанные.Получить(ТекСтрока + "Количество");
        rsMain.Fields.Item("TAB1_A5").Value = спДанные.Получить(ТекСтрока + "ЦенаБезНДС");
        rsMain.Fields.Item("TAB1_A6").Value = спДанные.Получить(ТекСтрока + "Сумма");
        rsMain.Post();
        Если ном <> КоличествоСтрок Тогда
            rsMain.Append();
        КонецЕсли;
    КонецЦикла;


ошибка:

rsMain.Fields.Item("TAB1_OV_NAME").Value = спДанные.Получить(ТекСтрока + "Единица");
Неизвестная ошибка


заработало

Автор: AnryMc 26.09.22, 8:44

Было бы неплохо узнать что такое rsMain?
Так как могут быть варианты...

Автор: sava1 26.09.22, 9:04

Цитата(AnryMc @ 26.09.22, 9:44) *
Было бы неплохо узнать что такое rsMain?


таблица в Медке

Автор: Vofka 27.09.22, 8:58

Цитата(4andriy @ 23.09.22, 18:00) *
заработало

Было бы не плохо озвучить решение.

Автор: 4andriy 28.09.22, 9:52

Vofka @ Вчера, 9:58 * ,

rsMain.Fields.Item("TAB1_OV_NAME").Value = спДанные.Получить(ТекСтрока + "Единица");
- убрал строку и заработало TAB1_OV_NAME не существует



на даный момент ошибка:

Doc = pd.OpenOrCreateDocument(orgId,Бланк,,,ДокИД,0);
{C:\1C\ВИГРУЗКА ДОКУМЕНТIВ З 1С В М.Е.ДОК (V.7).ERT(1247)}: Плохой тип переменной


сам код:
//=====================================================================================
Процедура ВигрузитиОЛЕ_ВидатковаНакладна(App, pd, orgId, док, ДокИД)
    
    //pd = "2";
    //ДокИД= "1";
    //док="2";
    //додав orgid
    orgId = ВыбФирма;
    Бланк = "1С77ВН";
                    
    спДанные = СоздатьОбъект("СписокЗначений");
    ЗаповнитиРеквізити(спДанные, док);
    Doc = pd.OpenOrCreateDocument(orgId,Бланк,,,ДокИД,0);


4andriy @ Сегодня, 10:43 * ,
описание по методу:
OpenOrCreateDocument( orgId As Long, charCode As String, num As String, docDate As Date, ExDocID As
String, reWrite As Boolean ) As IZDocument
Повертає документ за вказаними параметрами, якщо документа не існує - то вібувається створення нового
документа. Якщо документ існує та вказано reWrite = true - то виконується перезапис існуючого документа.
Вхідні параметри:
orgId - внутрішній ідентифікатор організації в M.E.Doc, в якій необхідно створити документ. Для
отримання скористайтесь методом SeekOrg();
charCode – чаркод шаблону первинного документа;
num – номер документа;
docDate – дата документа;
ExDocID – зовнішній ідентифікатор документа;
reWrite – ознака виконання повторного створення існуючого документа при співпадінню ExDocID -
true/false (1/0).

Автор: 4andriy 28.09.22, 11:07

4andriy @ Сегодня, 10:52 * ,
Приклад:

set App = CreateObject("Medoc.ZApplication")
orgId = App.SeekOrg("11223344", "")
set pd= App.GetPrimaryDocs()
set Doc = pd.OpenOrCreateDocument(orgId ,"1С82АВР", "4", "24.11.2020", "1234", 0)
Приклад заповнення таблиці маршрутів для багатостороннього первинного документа:
set rsRoute = Doc.DataSets("TAB9000")
rsRoute.Edit()
rsRoute.Fields.Item("DOCROUTE_POSITION").Value = 0
rsRoute.Fields.Item("DOCROUTE_EDRPOU").Value = "11223344"
rsRoute.Fields.Item("DOCROUTE_NAME").Value = "Продавець"
rsRoute.Append()
rsRoute.Edit()
rsRoute.Fields.Item("DOCROUTE_POSITION").Value = 1
rsRoute.Fields.Item("DOCROUTE_EDRPOU").Value = "11110000"
rsRoute.Fields.Item("DOCROUTE_NAME").Value = "Покупець1"
rsRoute.Append()
rsRoute.Edit()
rsRoute.Fields.Item("DOCROUTE_POSITION").Value = 2
rsRoute.Fields.Item("DOCROUTE_EDRPOU").Value = "22220000"
rsRoute.Fields.Item("DOCROUTE_NAME").Value = "Покупець2"

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua