powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выгрузка счета в 1С
20 сообщений из 20, страница 1 из 1
Выгрузка счета в 1С
    #35616445
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Требуется выгрузить из Фокса счет в 1С 77. Как это сделать? Разумеется, что данные на фоксовой стороне сделаю какие потребуется.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616517
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Файл-сервер? Или SQL?
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616629
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dag,

Семерка, не SQL
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616750
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Таблички у 1С77 такие же dbf, что и Фокса. Напрямую можно открыть и что требуется записать.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616754
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DagТаблички у 1С77 такие же dbf, что и Фокса. Напрямую можно открыть и что требуется записать.
Очень может быть, но структура неизвестна...
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616798
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FAMDagТаблички у 1С77 такие же dbf, что и Фокса. Напрямую можно открыть и что требуется записать.
Очень может быть, но структура неизвестна...

Даже если и известна (файл 1С77.dd) напрямую лучше не писать. Читать можно.
Используй либо OLE-сервер 1С (в книжках к 1С описано как юзать) либо экспорт в файл из фокса и импорт внешней обработкой в 1С. Второй вариант писать проще.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616811
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TFAMDagТаблички у 1С77 такие же dbf, что и Фокса. Напрямую можно открыть и что требуется записать.
Очень может быть, но структура неизвестна...

Даже если и известна (файл 1С77.dd) напрямую лучше не писать. Читать можно.
Используй либо OLE-сервер 1С (в книжках к 1С описано как юзать) либо экспорт в файл из фокса и импорт внешней обработкой в 1С. Второй вариант писать проще.
С этим продухтом я встречаюсь первый (надеюсь, что последний) раз. Именно поэтому прошу помочь не с советом поюзать инфу, а с конкретным решением.
Собственно базу я уже посмотрел. Впечатлений набрался - выше крыши. Идеология осталась досовская, ключи - прадедовские (((

если к этому прибавить блокировку таблиц - это просто не продукт. Но вот решить вставку нужно !!!!(((

Повторяюсь - кто может помочь - бросьте ссылочку или решение.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616828
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FAMС этим продухтом я встречаюсь первый (надеюсь, что последний) раз. Именно поэтому прошу помочь не с советом поюзать инфу, а с конкретным решением.

Напрямую в базу с записью лучше не лезть. Особенно если типовая 1С конфигурация могут обновить и структура изменится, да и не типовую могут поправить.

Пример завтра сброшу. В любом случае 1С поизучать прийдется. Ничего сложного, мне полдня хватило чтобы с нуля разобраться как документ туда экспортировать.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35616841
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Хорошо, спасибо, буду ждать!
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35617101
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В архиве:
1. Форма out_1c. Пример с использованием OLE, см. метод AddPrih()
2. load.ert - внешняя обработка 1С для загрузки из файла. Пример файла exchange.txt
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35617145
FAMDagТаблички у 1С77 такие же dbf, что и Фокса. Напрямую можно открыть и что требуется записать.
Очень может быть, но структура неизвестна...

Всё известно! Файл 1Cv7.DD содержит описание всех таблиц конфигурации.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35617181
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>КонецЦикла
> ... Файл 1Cv7.DD содержит ...
Для работы этого мало. Как минимум нужна информация по id и +... +... +.... + ВолшебныйФорум .

С уважением, Владимир.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35617319
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КонецЦикла[quot FAM]Всё известно! Файл 1Cv7.DD содержит описание всех таблиц конфигурации.
Почти всех. Еще нет периодических реквизитов. Они в 1С вообще через одно место хранятся.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35617934
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Спасибо огромное. Как я понимаю, это выгрузка и загрузка из 1 С. Прочитал - спасибо Вам большое. Но у меня проблема в том, что оператора не будет. Соответственно, загрузку делать некому. Я нашел на этом сайте похожее решение и по аналогии сделал, но до ума довести его не получается:

SET STEP ON
PUBLIC goV77, goTovar, goKlient, m.baza
m.baza="c:\SSTDB\"
m.baza = GETDIR("H:\OTDELY\AVTO\1C_DOC\prog\", "База данных 1С", "Укажите папку")

goV77 = CREATEOBJECT('V77.Application') && Создаем объект и получаем ссылку на него
IF TYPE("goV77")#"O"
WAIT WINDOW "! Не удалось создать Объект 1С" NOWAIT
CANCEL
ENDIF
=goV77.Initialize(goV77.RMTrade, '/D' +m.baza+' /M', '') && Открытие базы данных
goDOC=goV77.EvalExpr('CreateObject("Документ.Счет")') && Создаем ПН
WITH goDoc
.New()
.DocNum="FAM2"
.DocDate=DATE()
.Контрагент="ИП Мельник К.В."
.NewLine()
.Товар="Выгрузка"
.Количество=1
.Цена=2300
.Всего=.Количество*.Цена
.НДС=0
.Write()
ENDWITH

RELEASE goDOC, goV77

Но не получается подгрузить контрагентов и товар. Поля остаются пустыми. Очевидно, делаю что-то не так. Подскажите...
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35618100
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FAMНо не получается подгрузить контрагентов и товар. Поля остаются пустыми. Очевидно, делаю что-то не так. Подскажите...
Контрагент и товар это объекты а не строки. См. форму (выше давал в архиве) вызовы метода SetFromSpr()

Контрагент="ИП Мельник К.В." примерно так пишеться:
Код: plaintext
1.
2.
3.
4.
5.
loSpr=goV77.evalexpr('createobject("Справочник.Контрагенты)')
if loSpr.FindByDescr("ИП Мельник К.В.")= 0 
     MessageBox('Элемент "ИП Мельник К.В." не найден.')
else
     goDOC.SetAttrib('Контрагент', loSpr.CurrentItem())
endif

Искать еще можно по коду 1С. loSpr.FindByCode(...)
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35618249
kiruha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T,

Самое быстрое - из среды 1С при помощи компоненты 1С++ прямой запрос к табличке ДБФ.
Требуется драйвер vfpoledb.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
ЗагрузитьВнешнююКомпоненту("1CPP.dll");
глОлеДБ = СоздатьОбъект("OLEDBData");
	//Соединение = "Provider=VFPOLEDB;Deleted=Yes;Data Source=" + КаталогИБ()+ ";Mode=ReadWrite;Extended Properties="""";User ID="""";Password="""";Mask Password=False;Collating Sequence=RUSSIAN;DSN=""""";
	Рез=глОлеДБ.Соединение(" 
	|Provider=VFPOLEDB.1;
	|Null = Yes; 
	|Exclusive = No;
	|SourceType = DBF; 
	|Data Source=" + КаталогБазыФокс + ";
	|Mode=ReadWrite;
	|Extended Properties="""";
	|User ID="""";
	|Password="""";
	|Mask Password=False;
	|Collating Sequence=MACHINE; 
	|DSN=""""");
локОлеДБКоманда = глОлеДБ.СоздатьКоманду();
ТЗ = локОлеДБКоманда.ВыполнитьИнструкцию(текстЗапросаКДБФ); 
Быстрее чем com- на пару порядков и проще.
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35618275
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

кажется - ОНО!!!!
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35618329
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FAM,

Не пошло почему-то... Может есть еще что-то?
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35619361
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FAMFAM,

Не пошло почему-то... Может есть еще что-то?

1С-ки нет под рукой, попробовать не на чем.
Должно работать, в моем примере кавычки не хватает:
loSpr=goV77.evalexpr('createobject("Справочник.Контрагенты " )')
...
Рейтинг: 0 / 0
Выгрузка счета в 1С
    #35624222
FAM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
СПАСИБО!!!!!!
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Выгрузка счета в 1С
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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