Показать сообщение отдельно
Старый 14.03.2009, 21:32   #2
Solaris
Помним, скорбим...
 
Аватар для Solaris
 
Регистрация: 14.03.2009
Адрес: Кишинёв
Сообщений: 266
Очки: 50,451, Уровень: 100 Очки: 50,451, Уровень: 100 Очки: 50,451, Уровень: 100
Активность: 13% Активность: 13% Активность: 13%
Все :
4 за это сообщение
1,833 Всего
Solaris идет верным путем; 7%Solaris идет верным путем, 7%Solaris идет верным путем, 7%
По умолчанию

Как преобразовать БД СО4 из формата Firebird в формат Paradox

Метод 1:
  1. Создать резервную копию БД СО4 стандартными средствами
  2. Создать новую БД СО4 в формате Paradox
  3. Восстановить данные из резервной копии
Все "преобразование" закончено.

Метод 2:
  1. Создать резервную копию БД СО4 стандартными средствами
  2. Подключится к БД формата Paradox указав путь на резервную копию
  3. В процессе подключения программа сообщит что нехватает некоторых таблиц и предложит их создать, соглашайтесь
Все "преобразование" закончено.
(данное руководство не претендует на оригинальность и не позиционируется как единственно правильное, сведения описанные ниже прнимать не более как рекомендации)

Solaris добавил 14.03.2009 в 20:33
Правильное отображение копеек в счете
Собственно хочу предложить небольшой скрипт для исправления недочета КСТ. При выводе любой цифры в письменном виде копейки отображаются не совсем корректно (Пример: Четыре тысячи двести пятьдесят 40/100) что есть не хорошо.
Решение:
  1. Заходим в дизайнер и открываем соответствующее поле Memo
  2. Пишим во втором окне следующий текст:
    begin
    a:=STRTOFLOAT(COPY([Сумма счета (пропис.)], LENGTH([Сумма счета (пропис.)])-4, 1));
    if a = 1 then
    text:='копейка';
    if (a>1) and (a<5) then
    text:='копейки';
    if (a>4) or a = 0 then
    text:='копеек';
    memo:=copy([Сумма счета (пропис.)], 1,LENGTH([Сумма счета (пропис.)])-4)+' '+text;
    end
  3. Сохраняем полученный отчет.
Результат: Четыре тысячи двести пятьдесят 40 копеек.
Приведенный выше код не притендует на оригинальность и не является оптимальным, а лишь демонстрирует возможности встроенного дизайнера.

Solaris добавил 14.03.2009 в 20:34
Разбитие высоты и ширины на разные колонки в СО5/6
Постановка задачи:
Необходимо получить в разных столбцах высоту и шируну прямоугольного стеклопакета.
Решение:
В дизайнере отчета добавляется два поля Memo и пишется следующий код:

Memo1 (высота)
begin
memo:=COPY([Элемент:Размер], 1, POS(' ', [Элемент:Размер]));
end


Memo2 (ширина)
begin
memo:=COPY([Элемент:Размер], (POS(' ', [Элемент:Размер])+2),(POS('мм.', [Элемент:Размер])-(POS(' ', [Элемент:Размер])+2)));
end

Приведенный выше код не притендует на оригинальность и не является оптимальным, а лишь демонстрирует возможности встроенного дизайнера.

Solaris добавил 14.03.2009 в 20:34
округление цифр со5/со6
постановка задачи: необходимо округлить число выводимо на печать в со5/6
для этого достаточно использование слеующих функций: strtofloat, round, onlydigit (описание не привожу оно есть в дизайнере)
допустим у нас есть число а ввиде строки и его нам необхо округлить
Цитата:
begin
memo:= round(strtofloat(onlydigit(a)))
end
если необходимо округлить размер, то предварительно необходимо его разбить на части, а потом по желанию собрать обратно см. топик выше.
приведенный выше код не притендует на оригинальность и не является оптимальным, а лишь демонстрирует возможности встроенного дизайнера.

Последний раз редактировалось Solaris; 14.03.2009 в 21:34. Причина: Добавлено сообщение
Solaris вне форума  
Ответить с цитированием
Сказали спасибо:
biu09 (12.08.2009), Ирина (01.07.2009), mace (02.04.2009), Glazier (15.03.2009)