Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[1С:Бухгалтерия 8]

обработка данных из двух дбф файлов

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20953
Пост №11
 
27.06.2012 10:40

"Ты еще через временные таблицы и запрос сделай! ;)"

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №12
 
27.06.2012 10:47

А как сделать более оптимально используя только два этих ДБФ?

Studentca
читатель
офлайн
Дата регистрации: 21.10.2011
Сообщений: 91
Пост №13
 
27.06.2012 10:48

попробую

Studentca
читатель
офлайн
Дата регистрации: 21.10.2011
Сообщений: 91
Пост №14
 
27.06.2012 10:49

у меня в дбф одна строка с ID, а в дбфс их может быть очень много

Studentca
читатель
офлайн
Дата регистрации: 21.10.2011
Сообщений: 91
Пост №15
 
27.06.2012 10:58

"Пишет не найден ID...я вообще не правильно делаю? или все же в том направлении?<br> <br>ДБФ = Новый XBase;<br> ДБФС = Новый XBase;<br><br> ДБФ.ОткрытьФайл(ВыбФайлНакл,,Истина); <br> ДБФС.ОткрытьФайл(ВыбФайлСостав, , Истина);<br><br> СтарНомер = """"; <br> ПервыйРаз = 1;<br> Записать = Ложь;<br> <br> Для НК = 1 По ДБФС.КоличествоЗаписей() Цикл<br> ДБФС.Перейти(НК);<br> Сообщить("Обрабатываем НК");<br> ДБФ.ТекущийИндекс = ДБФ.индексы.ID; <br> ДБФ.ключ.ID = ДБФС.NI_ID;<br> <br><br> ЗаписьНайдена = ДБФ.НайтиПоКлючу("=");<br> Сообщить(ЗаписьНайдена);<br><br> Кол = ДБФ.ID;<br><br> <br> Если Кол = ДБФС.NI_ID Тогда <br> Сообщить(ДБФС.AMOUNT + " нашли!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");<br> Иначе <br> Сообщить(ДБФС.NI_ID);<br> КонецЕсли;"

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №16
 
27.06.2012 11:03

Ну ты вообще делаешь ни как я тебе предложил.

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20953
Пост №17
 
27.06.2012 11:16

Да все правильно ты сказал, просто еще есть метод, все поместить во временные и сделать запрос с группировкой по строке одной таблицы и выводом строк другой. Про множественность строк во второй таблицы я не учел.

Вьюн
читатель
офлайн
Дата регистрации: 14.01.2007
Сообщений: 657
Пост №18
 
27.06.2012 11:19

"ДБФ = Новый XBase;<br> ДБФС = Новый XBase;<br><br> ДБФ.ОткрытьФайл(ВыбФайлНакл,,Истина); <br> ДБФС.ОткрытьФайл(ВыбФайлСостав, , Истина);<br> <br>ДБФС.ДобавитьИндекс("NI_ID","NI_ID",0,0,"""");<br>ДБФС.СоздатьИндексныйФайл("NI_ID.CDX");<br>ДБФС.ТекущийИндекс("NI_ID");<br> <br>ДБФ.Первая();<br>Пока ДБФ.ВКонце()=0 Цикл<br>      ДБФ_ID = ДБФ.ID;<br>      ДБФС.Найти(ДБФ_ID,1);<br>      Пока (ДБФС.NI_ID = ДБФ_ID) Цикл<br>       Сообщить(ДБФС.AMOUNT + " нашли!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");<br>       ДБФС.Следующая();<br>      КонецЦикла;<br>      ДБФ.Следующая();<br>КонецЦикла;"

Studentca
читатель
офлайн
Дата регистрации: 21.10.2011
Сообщений: 91
Пост №19
 
27.06.2012 11:24

"Выдает ошибку.<br>{Форма.Форма1.Форма(291)}: Поле объекта не обнаружено (AMOUNT)<br> НС.Количество = Формат(ДБФС.AMOUNT, "ЧГ=0");<br> <br> <br>ДБФС = Новый XBase;<br><br> ДБФС.Кодировка = КодировкаXBase.OEM;<br> ТЗНакл = Новый ТаблицаЗначений;<br> ТЗНакл.Колонки.Добавить("НомерСтроки", Новый ОписаниеТипов("Число"));<br> ТЗНакл.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число"));<br> ТЗНакл.Колонки.Добавить("Сумма", Новый ОписаниеТипов("Число"));<br> ТЗНакл.Колонки.Добавить("Цена", Новый ОписаниеТипов("Число"));<br> ТЗНакл.Колонки.Добавить("Договор", Новый ОписаниеТипов("Строка"));<br> ТЗНакл.Колонки.Добавить("Код",                   Новый ОписаниеТипов("Строка"));<br> <br> ДБФС.ОткрытьФайл(ВыбФайлНакл, ,Истина);<br> НК = ДБФС.КоличествоЗаписей();<br><br> <br> Для НК = 1 По 5 Цикл<br> ДБФС.Перейти(НК);<br> <br> НС = ТЗНакл.Добавить();<br> НС.НомерСтроки = НК;<br> НС.Количество = Формат(ДБФС.AMOUNT, "ЧГ=0"); <br> НС.Сумма = Формат(ДБФС.SUMMA, "ЧГ=0");<br> НС.Цена = Формат(ДБФС.PRICE, "ЧГ=0");<br> НС.Договор = Формат(ДБФС.NI_ID, "ЧГ=0");<br> ДБФС.ТекущийИндекс = ДБФС.индексы.NI_ID;<br> <br>Индексы я правильно сделала?"

Studentca
читатель
офлайн
Дата регистрации: 21.10.2011
Сообщений: 91
Пост №20
 
27.06.2012 11:32

"исправила путь, но ошибка теперь такая<br> <br>{Форма.Форма1.Форма(295)}: Поле объекта не обнаружено (NI_ID)<br> ДБФС.ТекущийИндекс = ДБФС.индексы.NI_ID;"

Показывать по 10 20 40 сообщений

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация