Проблем особых нет.
Зациклите получение нового номера условием уникальности. И делов-то.
Но не забудьте предусмотреть выход из ситуации "неинкрементируемого номера". Например, номер, следующий за номером "бух/сп" будет тоже "бух/сп". Цикл может подвиснуть. Поэтому проверяйте свежесгенерированное и предыдущее значение номера документа. При их совпадении, отправляйте алгоритм по "чистой" ветви, например, предложив системе в качестве очередного номера "000001".
Добрый день.
Существует несколько виртуальных драйверов принтера, осуществляющих печать в pdf. От разных разработчиков. Некоторые из них бесплатные или почти бесплатные. Я пользуюсь pdf995 (www.pdf995.com). Но только потому, что это первый драйвер, который мне посоветовали. Сравнительного анализа не делал.
Создаёте копию базы. В копии очищаете все таблицы, содержащие оперативную информацию.
Может кто-то роботизировал эту операцию (скорей всего такая утилита есть у разработчиков), но я делаю это по-старинке, ручками.
Для того, чтобы текст в ячейке переносился и высота втоматически подбиралась, Вам необходимо установить свойство WrapText в true. примерно так:
oWorkSheet:cells(nLine,nCol):WrapText:=.T.
Добрый день.
Вот сегодня как раз с утра рисовал таблицу в excel. Примерно так:
oWorkSheet:Columns(nCol):HorizontalAlignment = xlRight //весь столбец - прижать к правому краю
oRange:=oWorkSheet:cells(3,nCol) // область - одна ячейка
oRange:activate() // активировать область
oRange:value:=oemtoansi(cName) // наименование колонки
oRange:font:bold:=.T. // жирный шрифт
oRange:HorizontalAlignment:=xlCenter // по горизонтали - в центре
oRange:VerticalAlignment:=xlTop //по вертикали - у верхнего края
oRange:Borders(xlEdgeBottom):LineStyle:=xlContinuous //снизу - граница сплошной линией
oRange:Borders(xlEdgeBottom):Weight:=xlThin //ширина линии - обычная
oWorkSheet:Columns(nCol):ColumnWidth:=25 //Ширина всего столбца - 25 единиц
В итоге для подготовки столбца использовал DEFINE и вызов
Особенность функционирования системы. Есть точное сравнение (==) и простое сравнение (=).
Вот описание для "простого сравнения". Соответственно, "не равно" представляет собой инверсию этих условий.
■ Символьный. Сравнение базируется на внутреннем представлении -
ASCII кодах. ASCII коды для алфавитных символов возрастают
(например, код для "A" - 65, а код для "Z" - 90). Когда командой
SET EXACT установлен режим OFF, то правила для сравнения двух
строк <выражение1> и <выражение2> следующие:
Если <выражение2> - пустая строка, то возвращается значение
"истина" (.T.)
Если LEN( <выражение2> ) больше, чем LEN( <выражение1> ), то
возвращается значение "ложь" (.F.)
Иначе, сравниваются все символы в <выражение2> с <выражение1>.
Если все символы в <выражение2> равны <выражение1>, то
возвращается значение "истина" (.T.), в противном случае -
возвращается значение "ложь" (.F.).
Когда SET EXACT ON, то, за исключением конечных пробелов,
сравниваемые строки должны точно совпадать.
На этот сложно ответить не зная, что содержит файл, выгружаемый клиент-банком. В целом, система работоспособна для стандартных данных. Но встречаются и очень причудливые выгрузки в формате 1CClientBankExchange.
Если Вы вышлите мне Ваш файл на e-mail, я смогу более предметно ответить на Ваш .
Ошибка подтвержена.
Исправления будут сделаны в ближайшем пакете.
Пока же могу посоветовать создать правило с максимальным приоритетом в списке и минимальным набором управляющих параметров (достаточно чтобы было заполнено поле приоритет и "принимать - да").
То есть, в исходном txt-файле содержится 13 документов. После обработки файла на экране отображаются все 13 документов, но принять предлагается только 11? Или из входного файла сразу принимаются только 11 документов?
Добрый день.
Разъясните пожалуйста, что значит "не принимает в выписку неразобранные (нет правил) документы".
Вы нажимаете F10, система спрашивает "принимать N документов?" Это N уже меньше реального количества? Или N правильное, а в выписке документов оказывается меньше?
Добрый день.
Вы можете активировать excel командой:
oApp:visible:=.T.
То, что при закрытии приложения процесс excel не заканчивается, может быть следствием того, что excel при закрытии спрашивает "сохранить файл?". А ответить некому...