Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вытянуть даные!
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Вся 1С
Vendetta-V
Вітаю всіх хто має бажання мені допомогти rolleyes.gif

В мене така проблема:

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

Мене поставили перед фактом зробити це і я прошу у Вас допомоги з якої сторони підійти до цього діла і використати дані з 1С.

1. Мені написали ось таке повідомлення :


посмотрите и скажите в каком формате вам нужны данные из
1С, чтобы начать программировать калькулятор. Я попрошу нашего
1С-программиста выгрузить их и прислать.


в sql можна ?

2. Калькулятор повинен синхронізувати дані з 1С сервером 1 раз вдень, ну в цьому думаю буде головна проблема розробки калькулятору,
тому дайте декілька порад як можна синхронізувати.


Дякую, з повагою Андрій!
logist
Цитата(Vendetta-V @ 22.02.12, 15:01) необходимо зарегистрироваться для просмотра ссылки
в sql можна ?

Можно. Пусть 1С соединяется с sql базой и записывает туда что надо, а Вы потом будете читать что там. Ничего сложного нет.
mister-x
можна в xml, txt, dbf - який краще підходить?
Цитата(logist @ 22.02.12, 15:12) необходимо зарегистрироваться для просмотра ссылки
Можно. Пусть 1С соединяется с sql базой и записывает туда что надо, а Вы потом будете читать что там. Ничего сложного нет.

+1
Zaval
Якщо база 1с серверна - і Вас влаштовує sql - то можете читати прямо з бази(щоправда серверна база 1с може бути не лише sql).
Vofka
Вариантов очень много. Как уже говорили:
  • читать напрямую из базы 1С
  • использовать файлы обмена (xml, txt, dbf, csv)

Ну и не звучал ещё вариант: писать напрямую в базу сайта данные, которые нужны калькулятору.
pablo
добавлю еще вариант. Когда 1с в определенный момент обращается к сайту с Пост-запросом.
McTSIMCO
А кто мешает взять данные непосредственно из 1С ? Вот пример для 7.7 на PHP:


// Создание объекта и инициализация 
one_C = new COM("V77L.Application") or die("Unable to instanciate 1C");

// инициализация 1С
res  = one_C->Initialize( one_C->RMTrade, "/DD:\1c_data\TRUKRDEM\ /NUserName /Ppassword", "NO_SPLASH_SHOW");

if ( res == -1 ) echo 'Initialize is OK';
else echo 'Initialize false';

// создаем объект

doc = one_C->CreateObject("Документ.Счет");

// вызываем  только англоязычные методы объекта
doc->ВыбратьДокументы();

i=0;
print "Документ.Счет:
№ п/пДатаНомерСумма с НДС     Контрагент
";
// обработка данных заявки :
while(  doc->ПолучитьДокумент()>0 )
{
i++;
printf ("%s%s%s%01.2f%s",i,doc->ДатаДок(),doc->НомерДок,doc->Итог(СуммаСНДС),"");//doc->Контрагент.ПолнНаименование);
//print doc->Контрагент.ПолнНаименование; // Не работает, :;%№":!!!
}
print "";

// финализация
//one_C->Release();
one_C = null;

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.