Мои комментарии

Заголовок Comment Дата публикации Дата обновления
Мы вынуждены поставлять с

Мы вынуждены поставлять с дистрибутивом программы довольно старую версию SQL Server, т.к. программой пользуются на Windows 2000, 2003, XP.
Поставка же нескольких версий SQL Server чрезмерно увеличивает размер дистрибутива.

Пробовали установить отдельно MSDE - получили сообщение о несовместимости с данной версией Windows - см. приложенный файл.

Windows 7, 8 такие окна показывает, что не мешает SQL Server 2000 установиться и работать.

У Вас ошибка возникает при установке где-то позже. Нажмите в приведенном Вами окошке кнопку "Запуск программы", тогда узнаете, что реально ей не нравится.

Типичная проблема при установке SQL Server 2000: не запущена служба сервера. Зайдите в "Службы" в панели управления и проверьте, что служба "Сервер" работает. Если нет, то запустите ее. После установки SQL Server ее можно отключить обратно.

Вы устанавливаете Инфо-Бухгалтер 10 от 20 декабря 2013 года.
Рекомендуем Вам скачать с сайта и установить более новую версию от 15 сентября 2014 года

На картинке - версия платформы 10.1, прикладные компоненты там скорее всего новые.

25.11.2014 14:04 26.11.2014 09:14
http://users.kaluga.ru/logika

http://users.kaluga.ru/logika/slonik.jpg

Точно )))

22.10.2014 23:03 28.10.2014 17:50
Вот образец высокомерного,

Вот образец высокомерного, хамского общения с дилерами.

С отдельными дилерами, которые, на мой взгляд, сами напросились.
Есть несколько поговорок на эту тему, да вы и сами их знаете...

Слепил, может и коряво, но работает.

Ну и славно.

Можно от десятки ожидать возможности выполнения функций десятки из внешних программ?

Связь с сайтом тому пример.

Про слоников, поучительный пример.

Если кто не понял, то я имел в виду, что некоторые дилеры (не будем показывать пальцем) пытаются мной манипулировать по разным поводам и исходят желчью, когда им это не удается.
Так что, слоник в данном случае - это я.

22.10.2014 20:04 22.10.2014 20:04
Я вроде СЕБЕ помощи не просил

Я вроде СЕБЕ помощи не просил.

Ну и славно.

Извините, г-н Бурлак, но это клевета.

Не-не-не. Здесь речь идет о субъективном восприятии мной обращения ко мне неких лиц. Какое это отношение: дружеское, сдержанное или хамское - это мое оценочное суждение. Оценочное суждение не является клеветой по определению. Клевета - это утверждение заведомо ложных фактов о ком-то, и факты при этом доступны формальной проверке.
Например, заявление "Вася Пупкин - дурак" не является клеветой ни в каком случае, т.к. пусть он попробует получить в поликлинике справку, что не дурак.
А вот заявление, что Вася Пупкин в прошлом году укрыл от налоговых органов доход в размере 10 млн. рублей может быть признано клеветой, если нарушение не будет выявлено инспекцией.

Нет, именно возможностей программы И-Б простейшим образом получать данные из сторонних приложений в РЕАЛЬНОМ ВРЕМЕНИ, пусть это будет Excel, "1С-Торговля и склад", кассовый терминал и т.п..

Опять двадцать пять. По существу. Здесь же говорили о добавлении информации из сторонней программы в базу ИБ. Не надо переводить на другие темы.
Какие-такие возможности программы ИБ, если ее даже запускать не надо для осуществления обсуждаемого здесь процесса.

Так что, ребята, разбирайтесь сами...

Как я понял, это адресовано Евгению и другим заинтересованным пользователям (правда, как-то фамильярно прозвучало).

Разумеется нет. Это было адресовано г-ам Олейнику и Полунину исключительно, которые нарисовались в теме как самые жаждущие (мне в таких случаях всегда почему-то вспоминается анекдот про "папа, пусть слоники побегают").
А уважаемые пользователи и не менее уважаемые дилеры, которым действительно нужно разобраться, разберутся, никаких ракетных технологий там нет.

22.10.2014 11:48 22.10.2014 11:48
Если полагаете, что подобное

Если полагаете, что подобное развитие программы - это помощь конкретному Олейнику, Полунинну или ещё кому-то, то делать не стоит, независимо от взаимоотношений с персоналиями

Во первых, я не вижу в чем тут "развитие программы".

Во вторых, сделать минимальный законченный пример - это не час и не два работы. При том, что опыт программирования на VB у меня практически нулевой и надо будет смотреть документацию, как и любому из вас.

В третьих, что предлагалось сделать:

простая табличка типа
"№ документа", "Дата", "Наименование товара", "Кол-во", "ЕИ", "Цена", "Сумма"
по нажатию кнопочки в форме появляется в виде хозяйственной операции.

Здесь всяких мелких деталей масса, которые несущественны для самого процесса взаимодействия.
Надо генерировать операцию, какие-то проводки между какими-то счетами.

В то время как ключевым моментом является только получение нового id и INSERT с этим id и прочими полями.

Схематически:

is2_Init // инициализация клиентской библиотеки

Dim Db As String
Db = ... // путь к БД, например "L:\NetBase"

Dim User As String
User = "Администратор"

Dim CounterName As String
CounterName = "IB" // имя основного счетчика ИБ

Dim Id As Long
Dim NeedCalc As Byte
// получаем новый Id
is2_GetAutoInc(Db, User, CounterName, NeedCalc, Id)
if NeedCalc
// ... еще не вычислялся MAX для счетчика,
// вызываем is2_CalcAutoInc с параметрами как в справке

Dim Sql As String
Sql = "INSERT " + ... // используем Id
is2_ExecSQL(Db, User, Sql) // выполняем запрос

is2_Done // деинициализация клиентской библиотеки

Можно добавить обработку ошибок с помощью функции is2_LastError.

21.10.2014 14:36 21.10.2014 14:39
Александр, работающий пример,

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

Возможностей какой программы, Excel?

Главное выполнить функцию из внешней программы. Для меня сейчас важно это сделать из Excel в варианте стандартной поставки. Как делать это с помощью ibalt.dll Денис показывал ещё 8 лет назад.
Наверное так и делать придётся.

Чего же за 8 лет еще не сделали?

Ждем-с.

Что-то не очень хочется помогать Олейнику и Полунину при их систематически хамском обращении.
Так что, ребята, разбирайтесь сами...

21.10.2014 11:32 21.10.2014 11:32
Из VB запросто можно вызывать

Из VB запросто можно вызывать DLL'ные функции.
Вот пример объявления прототипа для is2_ExecSQL:

Declare Function ExecSQL Lib "infs2cln.dll" Alias "is2_ExecSQL"(DbDir As String, UserName As String, SQLQuery As String) As Byte

17.10.2014 18:13 17.10.2014 18:13
А где можно ознакомиться

А где можно ознакомиться подробно с функциями infs2cln.dll ?

В документации ИС "Программный доступ...".
Сейчас документация ИС входит в состав справки ИБ 8.

А нельзя функции API ИС как-то "обернуть", сделав доступными из языков "попроще" (VBA, VBS, Open Basic и т.п.).
Например, для прямого формирования проводок ИБ из офисных приложений. Через СОМ или как-то ещё.

Все можно.
На тот момент не было уверенности, что программный доступ вообще кому-то будет нужен.
Поэтому реализация была сделана только в необходимом для ИБ 8 объеме.

17.10.2014 12:10 18.10.2014 07:56
Речь была, как я понял, о

Речь была, как я понял, о записи в БД И-Б операций в онлайн-режиме из стороннего приложения.
Как можно синхронизировать этот процесс одновременно и в приложении И-Б, и в сторонней программе (стандартным способом)?

С помощью счетчика Инфо-Сервера получаем id новой записи.
Затем выполняем INSERT с этим id и значениями прочих полей.
Из внутреннего языка это выливается в вызовы ИС_СЧЕТЧИК + ТИП_SQL.ЗАПРОС.

Из стороннего софта можно использовать функции API Инфо-Сервера,
которые реализованы в infs2cln.dll.
Расчет и получение значения автоинкрементального счетчика выполняется функциями is2_CalcAutoInc и is2_GetAutoInc соответственно.
Выполнение запроса - is2_ExecSQL.

Использование API ИС приведет к тому, что для ИС клиент стороннего софта будет неотличим от клиента ИБ.
Новые операции будут появляться в окне ЖХО также, как при добавлении с другого рабочего места ИБ.

16.10.2014 10:10 16.10.2014 14:37
В режиме Инфо-Сервера

В режиме Инфо-Сервера требуемую задачу из внутреннего языка решает функция ИС_СЧЕТЧИК (см. описание и пример в справке).

Инфо-Сервер использует общий счетчик на все таблицы базы данных.
Запросы вида:
SELECT MAX(OPER_NUMB) FROM HOZOP
выполняются только при первом обращении к базе.
Счетчик инициализируется максимальным значением из найденных (для операций, проводок, счетов и т.д.).
Далее счетчик "живет" только во внутренней переменной Инфо-Сервера.
Поэтому, для получения следующего значения никаких блокировок таблиц не требуется.

Таблица EVENTNET совсем не используется при работе в режиме Инфо-Сервера.

10.10.2014 11:09 10.10.2014 11:09
Смысл сообщения заключается в

Смысл сообщения заключается в том, что на диске С мало места. Неужели нужно столько места или я что-то сделал не так после установки обновления?

~3.5 Гб хочет и ~1.2 Гб свободно на С:
Как-то мало свободного места по меркам нынешнего времени.

Файлы баз данных MS SQL имеют довольно рыхлую структуру: выравнивание, индексы + история в виде журнала транзакций...

08.10.2014 17:18 08.10.2014 17:18
Для VirtualBox есть такая

Для VirtualBox есть такая информация:
http://www.virtualbox.org/manual/ch12.html#idp57177296

07.10.2014 16:36 07.10.2014 16:36
Вместо переменной что-то

Вместо переменной что-то другое оказалось.
На то она и "внутренняя ошибка", что такого не должно быть никогда.

Вы бы кусочек кода привели, тогда мне было бы понятнее в чем дело.
Скорее всего какая-то пограничная ситуация: переменная и функция одинаково называются или переменная и тип.

04.06.2014 18:11 04.06.2014 18:11
Посмотрите в справке тип XML

Посмотрите в справке тип XML_КУРСОР.

08.05.2014 16:19 08.05.2014 16:19
Консенсус в обсуждении пока

Консенсус в обсуждении пока не был достигнут.
Как не выявилось и особенной заинтересованности других пользователей.

Уточните для начала несколько вопросов:

1. Под планом счетов понимается только выбор счета или оборотка и исходные остатки тоже?
2. Для разных вызовов функции ВЫБОР_СЧЕТА надо иметь возможность сортировки "по выбору пользователя"?
4. При стандартном выборе счета настройка всегда одинаковая (или зависит от графы и т.п., хранить в свойствах графы)?
3. Для разных пользователей в сетевой версии настройка общая или у каждого своя
(хранить в базе или в cfg)?

24.04.2014 16:42 24.04.2014 16:42
В версии 8.720 действительно

Высылаю 2 разных файла планов счетов. Достоверно установлено, что предыдущая версия 8719 ничего не портит при проверке. А версия 8720 портит план счетов, который в файле PLSCET-Err, а PLSCET-NoErr не портит. 8719 не портит ничего.

В версии 8.720 действительно был изменен алгоритм проверки наличия субсчетов.
В Вашем случае замена алгоритма повлияла на обработку файла, созданного с неправильной настройкой языкового драйвера.

Если посмотреть содержимое файла PLSCET-NoErr, то вся строковая информация представлена в формате ANSI Windows cp1251
(что соответствует настройке языкового драйвера BDE Pdox ANSI Cyrillic).

Если посмотреть содержимое файла PLSCET-Err, то видно, что русские буквы кодированы не в ANSI Windows cp1251, а в OEM/DOS cp 866
(видимо, для Paradox была сделана настройка dBase RUS cp866).

Рекомендация:
1. Выгрузить базу данных в файл SHP.
2. Исправить языковой драйвер Paradox на Pdox ANSI Cyrillic.
3. Импортировать базу из SHP.

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

23.04.2014 11:23 23.04.2014 11:23
SOS! После проверки

SOS! После проверки логической целостности базы (пункт меню Файлы-База данных-Проверить) слетают признаки субсчетов. Т.е. пропадают счета 2-го уровня и ниже.

Все или некоторые?
Было бы идеально получить базу до проверки на burlak@ib.ru
Если базу выслать нет возможности, то опишите подробнее с указанием
конкретных кодов счетов.

22.04.2014 10:34 22.04.2014 10:34
... во всех справочниках

... во всех справочниках КЛАДР, Банки сплошная тарабарская азбука. Подскажите как исправить? Как я понимаю, это проблема кодировки.

Если на компьютере установлено BDE, то надо настроить языковой драйвер ODBC для dbf файлов.
В С:\Program Files\Borland\Common Files\BDE запустите bdeadmin.exe.
Поставьте драйвер RUS cp866 как на картинке:

14.03.2014 11:09 14.03.2014 11:09
Я уже несколько раз

Где предлагается задавать, для каких счетов по наименованию, а для каких по коду?

04.03.2014 10:43 14.10.2014 09:24
Нашел, что время последнего

Нашел, что время последнего вызова инициализируется нулем при старте программы.
Значит, когда счетчик GetTickCount ушел в отрицательную область, то все - 25 дней без вызова...

В коде я поправил инициализацию и сравнение с учетом переполнения счетчика.
А сейчас для Вас временный способ решения - перезагрузить сервер.

29.01.2014 10:06 29.01.2014 10:06