Приветствую. Подскажите, пожалуйста, примеры или где можно почитать о форматировании устройств. В частности нужна возможность форматировать нескольких USB-накопителей. Заранее благодарен.

2

(29 replies, posted in Russian)

Да, работает. Благодарю. И как вариант еще можно так - добавляем строчку:

vrbl := Form1.Memo1.Text + #13#10;

3

(29 replies, posted in Russian)

У меня ошибка повторяемая. Заметил в проекте - повторил в примере. Кнопка "1 строка + report". В папке сохранил скриншот ошибки.

4

(29 replies, posted in Russian)

DriveSoft wrote:

Данный скрипт был предназначен для скриптов в отчете.

Извините, недогадался smile

m.prokhachev wrote:

Form1.frxReport.Variables['Memo1'] := frmTexZavd.Memo1.Text;

Если Мемо содержит одну строчку с буквами - появится сообщение об ошибке. С Edit-ами не работает - тоже сообщение об ошибке. С несколькими строками работает как надо smile
Всем спасибо за оказанную помощь.

5

(29 replies, posted in Russian)

Прописал скрипт - апострофы остались.

6

(29 replies, posted in Russian)

DriveSoft wrote:

Программа автоматически удаляет переносы строк при использовании кнопки с действием "Отчет"

Так должно быть и по-другому не планируется?
И возможно ли убрать появляющиеся в отчете апострофы?

7

(29 replies, posted in Russian)

Приложил пример.

DriveSoft wrote:

К сожалению не понял вопрос.
В принципе можно воспользоваться таким же методом. Заменять переносы строк в компоненте на событии OnClick и возвращать их обратно на событии OnAfterClick

Символ переноса строки передается скриптом в очет (как в примере - без замен и возвращения), но не переносится через список компонентов участвующих в поиске! Почему?

8

(29 replies, posted in Russian)

DriveSoft wrote:

У себя я такого не наблюдал, приложите пожалуйста ваш проект, проверю  чем дело.

В коде нету ничего такого...

//Заносим в Мемо нужные значения
var
    zzid, zzri, zzrc: integer;  //id заказа, индекс и количество утвержденных заказов
begin
    zzrc := SQLExecute ('SELECT COUNT (zamovlinfo) FROM Zamovlennya WHERE id_Klient = '+ Form1.ComboBox1.sqlValue+' AND zamovlvroboty = 1 AND zamovlvudano = 0'); 
    if zzrc > 0 then
    begin
        zzid := -1;
        for zzri := 1 to zzrc do 
        begin
            frmTexZavd.Memo2.Text := frmTexZavd.Memo2.Text + SQLExecute ('SELECT zamovlinfo FROM Zamovlennya WHERE id_Klient = '+ Form1.ComboBox1.sqlValue+' AND zamovlvroboty = 1 AND zamovlvudano = 0 AND id >' +inttostr (zzid)) + #13#10;
            zzid := SQLExecute ('SELECT id FROM Zamovlennya WHERE id_Klient = '+ Form1.ComboBox1.sqlValue+' AND zamovlvroboty = 1 AND zamovlvudano = 0 AND id >' +inttostr (zzid));
        end;
    end;
//Создаем переменные в Фастрепорте
procedure VariableToReport ();
var
    vrbl: string;  
begin
    Form1.frxReport.Variables.Clear;
    Form1.frxReport.Variables[' ' + 'Components'] := Null;
    vrbl := frmTexZavd.Memo1.Text;
    Form1.frxReport.Variables['Memo1'] := ''''+vrbl+'''';
    vrbl := frmTexZavd.Memo2.Text;
    Form1.frxReport.Variables['Memo2'] := ''''+vrbl+'''';
    vrbl := frmTexZavd.Memo3.Text;
    Form1.frxReport.Variables['Memo3'] := ''''+vrbl+'''';
end;

И в Фастрепорте получаем апострофы в полях Мемо. Причем если строка одна - их нету, а если несколько строк - они есть.
И еще тот же вопрос - символ переноса строки через список компонентов участвующих в поиске?

9

(29 replies, posted in Russian)

Если создавать переменные и присваивать значение скриптом - в отчете переменная Мемо получает символ переноса строки))) То есть, через скрипт есть строки, а почему через список компонентов участвующих в поиске строк нету? И еще момент - при присвоении значения сриптом переменной Мемо

Employees.frxReport.Variables['Memo1'] := ''''+s+'''';

в отчете в начале и в конце ее текста появляются апострофы

10

(29 replies, posted in Russian)

Очень жаль. Все очень хорошо складывалось, и только из-за одного символа...  Возник вопрос, если добавить в список компонентов участвующих в поиске Грид - он работает только если в нем выделена строка, если выбор не сделан Грид никак себя не проявляет. Не лучше ли когда в Фастрепорт будут передаваться только те результаты, которые отсортированы и отображаются в Гриде?

11

(29 replies, posted in Russian)

В отчет Фастрепорта из Мемо не передается символ новой строки.

12

(29 replies, posted in Russian)

1. Если добавить компонент в список компонентов участвующих в поиске, а потом открыть дизайнер Фастрепорта, в чистом отчете новый компонент появится среди Variables, а вот в сохраненном - нет.
2. Если изображение невозможно передать, тогда передадим путь к нему)  Не найдется ли пример скрипта для Фастрепорта по такому случаю?
UPD 1. Все передается если выбирать сразу шаблон отчета в MVD.
UPD 2. Для отображения изображения в обьекте Picture Фастрепорта достаточно вписать в параметр FileLink имя компонента из списка Variables содержащий путь к файлу и заключить его в квадратные скобки [Edit1]
Все прекрасно работает smile

13

(29 replies, posted in Russian)

Компоненты включаются в список поиска для отображения в Фастрепорте среди Variables.
В компонент Мемо скриптом отбираются данные из базы, чтобы иметь возможность их измененения (не внося изменения в базу). С компонентом Image та же ситуация - поиск файла на компьютере, вывод в компонент для превью и, хотелось бы, последующую передачу изображения в Фастрепорт.

frmTexZavd.Image1.Clear;

Ругается - Undeclared identifier: 'Clear'

14

(29 replies, posted in Russian)

К сожалению, скриншот оказался непригоден к использованию - мелкие детали изображения теряются при печати. При использовании Фаст репорта столкнулся с некоторыми сложностями. Во первых - компонент Мемо (если он непривязан к базе данных) при включении в список компонентов участвующих в поиске при попытке создания отчета вызывает ошибку. Во вторых - не получается включить в компоненты участвующие в поиске компонент Image. Возможно ли скриптом очищать отображаемое изображение в компоненте Image? Благодарю за ответ.

15

(29 replies, posted in Russian)

Ок, вполне работоспособно)

16

(29 replies, posted in Russian)

Здравствуйте. Есть, к примеру, данные на форме - собранные из нескольких таблиц и с возможностью редактирования (текст и изображения). Хотелось бы создать скриншот формы и отправить на печать. Есть ли такая возможность?
Фаст репорт не очень удобно использовать, разве что, помещать туда снимок формы.

Работает превосходно. Еще раз благодарю.

Благодарю за ответ.
Действительно, так проще.
Есть один момент - значение записывается, но не считывается (не возвращает значение).
И интересует вопрос - а возможно ли через переменную задавать в какой TableGrid выводить результаты поиска?

Здравствуйте! Интересует управление обьектом

checklistbox := TChecklistbox.Create(Form1);
checklistbox.Parent := Form1.Panel1;
checklistbox.Imename := '11111' ;

Обьект создается, список заполняется. Но:
1. Не получается обратиться к компоненту по имени.
2. Как проверить выделенные строки?
3. Нужно проверить создан ли он уже.
4. Если создан - очистить или уничтожить)
Не пинайте, пожалуйста,  пытаюсь реализовать связь многие-ко-многим путем создания пяти динамических списков...

20

(4 replies, posted in Russian)

SELECT
Zamovlennya.id 

FROM                                            
Zamovlennya

LEFT OUTER JOIN Koshtu ON Zamovlennya.id_klient = Koshtu.id_klient 
LEFT OUTER JOIN Klient ON Zamovlennya.id_klient = Klient.id

WHERE
((SELECT SUM (Zamovlennya.zamovlvartist) FROM Zamovlennya WHERE Zamovlennya.id_klient = Klient.id AND Zamovlennya.zamovldovge = 0)
+(SELECT SUM (Zamovlennya.zamovlmaket) FROM Zamovlennya WHERE Zamovlennya.id_klient = Klient.id AND Zamovlennya.zamovldovge = 0)
-(SELECT SUM (Koshtu.koshtusyma) FROM Koshtu WHERE Koshtu.id_klient = Klient.id)>0) 

GROUP BY Klient.id 

Подзапросы таки мощь)))

21

(4 replies, posted in Russian)

SELECT Zamovlennya.id FROM Zamovlennya
LEFT OUTER JOIN Klient ON Klient.id=Zamovlennya.id_Klient
LEFT OUTER JOIN Koshtu ON Klient.id=Koshtu.id_Klient
WHERE
Zamovlennya.zamovlvudano=1 AND
Klient.klientborg=0 AND
(Klient.klientborg=1  если (Zamovlennya.zamovlvudano=1 AND (SUM (Koshtu.koshtusyma) >= SUM (Zamovlennya.zamovlvartist) клиента))) - как правильно записать вычисление?

22

(4 replies, posted in Russian)

Здравствуйте! Прошу помощи по SQL-запросу, а точнее нужно правильно сформулировать условие
SELECT id FROM Zamovlennya
http://picua.org/img/2018-03/31/2osjzi8yse4ropf0el84vyqjz.jpg
WHERE:
1. zamovlvudano=1
2. klientborg=0
3. klientborg=1, если при zamovlvudano=1 сумма koshtusyma >= zamovlvartist (тоесть сумма платежей клиента больше или равна стоимости выданных ему заказов).
Таблица Klient соединена по JOINу, а вот как быть с Koshtu...

23

(13 replies, posted in Russian)

Все-таки надеемся на исправление, пока что вместо апострофа в фамилии используем двойные кавычки. В коде выше приведена выдержка из сообщения с ошибкой, а там имя компонента заменяется введенным текстом (как по мне так для компонентов нет лучше, чем стандартные имена:)). А синенькое решается дополнительным пробелом, просто, несколько, отвлекает.

24

(13 replies, posted in Russian)

Здравствуйте! Есть вопрос по апострофу:
1. Если в скрипте перед закрывающим апострофом находится буква я, то окрашивается синим весь последующий скрипт, причем, если букв я две или больше - последующий скрипт не синеет (например: посинеет - 'запрос ...  я', не посинеет - 'запрос ...  яяяя').
2. Имеем Edit с подключенным SQL-поиском по всем полям. Если у клиента фамилия' с апострофом получаем ошибку: near "'%'": syntax error. И соответственно ошибочний запрос с нашим "лишним" апострофом:

(CASE WHEN '{фамилия}' <> '' THEN klientprizvimja LIKE '%{фамилия'}%'  ELSE 1=1 END) OR

Очень хочется побороть ошибку.
Заранее благодарю.

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