Стань эффективнее
+7 (495) 545 41 02

Пример запросов

Настройки для внешнего доступа (API)

Declare
 ClientId Pck_InterShop.TId;
 FaceId Pck_InterShop.TId;
 FirmId Pck_InterShop.TId;
 BankAcc Pck_InterShop.TId;
 DocumentId Pck_InterShop.TId;
 BankAccountId Pck_InterShop.TId;
 GdsPosId Pck_InterShop.TId;
 Price Pck_InterShop.TId;
 GdsClssId Pck_InterShop.TId;
Begin

/*Добавляем Клиента*/

 ClientId:= Pck_InterShop.InsClient(
  aName => 'Клиент',
  aEMail => 'client@mail.ru',
  aPhone => '999-99-99',
  aURL => 'www.client.ru',
  aAddress => 'Адрес клиента');

/*Добавляем физическое лицо*/

 FaceId:= Pck_InterShop.InsFace(
  aName => 'Лицо',
  aSurName => 'Web',
  aLastName => 'Физическое',
  aOwnerId => ClientId,
  aPhone => '777-77-77',
  aEMail => 'face@mail.ru',
  aICQ => '87654321',
  aSkype => 'SkypeName',
  aAddress => 'Адрес физ. лица');

/*Добавляем юридическое лицо*/

 FirmId:= Pck_InterShop.InsFirm(
  aName => 'Web-юр. лицо',
  aINN => '9999999999',
  aKPP => '7777777',
  aOwnerId => ClientId,
  aFirmTypeId => 2,
  aPhone => '888-88-88',
  aAddress_Post => 'Почтовый адрес юр. лица',
  aAddress_Fact => 'Фактический адрес юр. лица');

/*Берём любой BankAccount. Этот блок для примера, iBankAccountId должен выбираться пользователем*/

 BankAccountId:= 0;
 For C In (select * from v_e_bankaccount_forsale) Loop
  BankAccountId:= C.iBankAccountId;
  Exit;
 End Loop C;

/*Заносим счет клиенту*/

 DocumentId:= Pck_InterShop.InsDocument(
  aBankAccountId => BankAccountId,
  aContragentId => FirmId,
  aContragentId_Face => FaceId,
  aExecuteDate => SysDate + 5, --Плюс 5 дней к текущей дате
  aComment => 'Комментарий к счету');

/*Выбираем 5 позиций из классификатора*/

/*Добавляем в счет позиции*/

 For C In (select * from V_E_GdsClssTree_forsale where IISFOLDER = 0 And RowNum <=5) Loop
  GdsPosId:=pck_intershop.InsGdsPos(
  aDocumentId => DocumentId,
  aGdsClssId => C.iGdsClssId,
  aQnt => 1,
  aPrice => C.Decprice);
 End Loop C;

/*Подготавливаем документ к работе*/

 Pck_Intershop.AfterDocumentChanged(aDocumentId => DocumentId);

/*Переводим счет в состояние "Оформлено"*/

 Pck_Intershop.SetDocumentState(
  aDocumentId => DocumentId,
  aDocumentStateId => 3);
End;



Пример добавления клиента на PHP

$name = "Клиент";

$email = "client@mail.ru";

$phone = "999-99-99";

$url = "www.client.ru";

$address = "Адрес клиента";

$c = OCILogon("User", "Password", "ava");

if (!$c) {

echo "Ошибка подключения: " . var_dump(OCIError());

die();

}

$s = OCIParse($c, "Begin ClientId:= Pck_InterShop.InsClient(aName => :name', aEMail => :email, aPhone => :phone, aURL => :url, aAddress => :address); End;");

OCIBindByName($s, ":name", $name);

OCIBindByName($s, ":email", $email);

OCIBindByName($s, ":phone", $phone);

OCIBindByName($s, ":url", $url);

OCIBindByName($s, ":address", $address);

OCIBindByName($s, ":client_id", $client_id, 10);

OCIExecute($s, OCI_DEFAULT);

echo "ID нового клиента: " . $client_id;