Вверх ↑
Этот топик читают: Гость
Ответов: 257
Рейтинг: -2
#1: 2013-10-30 17:40:53 ЛС | профиль | цитата
Сколько поиск не мучил, работающего примера не нашел. Мне нужно распечатать документ ( вот пример - http://gfile.ru/a2gSK). В нем будет заполняться таблица,которая может быть сколько угодно большая, может быть несколько страниц. Таблица будет заполнятся из MTstr. При этом часть документа - шаблон, который не будет изменяться (посмотрите пример, там все понятно). Покажите пример как это сделать. Я так понимаю надо будет печатать через браузер. Объединенную тему про печать не нашел, пусть будет эта, в поиске только куча вопросов и посылов читать справку, не одного работающего примера, где нужно распечатать более 1-й страницы.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#2: 2013-10-30 17:56:19 ЛС | профиль | цитата
mudfactory писал(а):
Таблица будет заполнятся из MTstr
Это что за зверь ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 257
Рейтинг: -2
#3: 2013-10-30 18:02:36 ЛС | профиль | цитата
вот это

Add(MTStrTbl,6031137,154,168)
{
Left=150
Top=165
}


карма: 0

0
Ответов: 16884
Рейтинг: 1239
#4: 2013-10-30 21:13:32 ЛС | профиль | цитата
Ага. Этот, который Коля, он Вася.

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 257
Рейтинг: -2
#5: 2013-10-31 02:23:50 ЛС | профиль | цитата
Посмотрите, у вас тоже при предварительном просмотре, рамка в таблице разной толщины у ячеек?

code_32217.txt
карма: 0

0
файлы: 1code_32217.txt [3.6KB] [305]
Ответов: 16884
Рейтинг: 1239
#6: 2013-10-31 10:54:19 ЛС | профиль | цитата
Прочерки ставь.
mudprint.gif
А так и под FPC будет работать и с любым, установленным в системе, браузером и без прочерков.
mudprint.rar
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 2mudprint.gif [8.6KB] [465], mudprint.rar [1.2KB] [133]
Ответов: 257
Рейтинг: -2
#7: 2013-10-31 20:33:51 ЛС | профиль | цитата
я немного не понял что вы там поменяли (слишком много текста). Там я так понимаю проблема именно с предварительным просмотром. Хром нормально эту рамку отображает, а IE накладывает рамки друг на друга у заполненных ячеек

Еще конкретная проблема - когда формируется HTML таблица с MTstr, невозможно задать ее ширину, приходится выдергивать из того что сформировал компонент блок непосредственно самой таблицы, а свойства самой таблицы задавать в шаблоне HTML

вообще компонентц MTSTRhtml очень не хватает свойства где можно задавать ширину таблицы, ячеек и ее свойства, так как он берет эти данные из того что в программе, это вообще не правильно.
------------ Дoбавленo в 18.29:
1. При предварительном просмотре ( то, как IE в итоге печатает страницу) он сжимает ее до размеров листа, по этому нужно задавать ширину html элементов на странице не больше 645 пикселей в ширину - это как раз размер поля, в которое запихивает то что нужно распечатать, IE ( замучился подбирать )
2. То что границы рамок накладываются друг на друга - нужно вручную прописывать свойство таблицы border-collapse: collapse; в шаблоне того что нужно напечатать. Саму таблицу HTML которая выводится элементом нужно отфильтровать - т.е. выводить с компонента только значения самой таблицы, то, что между тегами <tr> с помощью поиска блоков.
3. Задавать свойства самой таблицы которая будет вставляться в HTML непосредственно в шаблоне. Так как обычно это делается применимо к каждой ячейке, но так как у компонента нет возможности задавать эти свойства, то это нужно прописать в шаблоне, а то что выводит компонент - отфильтровать.

------------ Дoбавленo в 18.33:
и еще, почему нужно задавать ширину таблицы заранее. IE все растягиваетсжимает до размера листа а4. При этом текст деформируется (расстояние между буквами и т.д.) никакие свойства csss в этом случае не помогут, сожмет так как ему надо. По этому нужно всегда проверять чтоб страница при предварительном просмотре отображалась одинаково, как при выбраном в окошке предварительного просмотра "сжимать по размеру" так и при выборе "100%". Возможно тогда, выполнив все эти действия, документ напечатается так, как задумывалось Или кто-нибудь когда-нибудь переделает компонент для нормального формирования таблиц HTML из MTstr, либо добавит возможность печатать нормальным браузером а не IE)
------------ Дoбавленo в 20.33:
В общем не работает нормально отображение и печать документов через браузер. Походу понятия печать и hiasm не совместимые
карма: 0

0
Ответов: 8926
Рейтинг: 823
#8: 2013-10-31 22:27:41 ЛС | профиль | цитата
mudfactory, а слабо Ваш документ нарисовать на картинке и печатать как картинку
Если есть MSOffice можно отправлять на печать через Excel (или Word) по заготовленному шаблону.
mudfactory писал(а):
Походу понятия печать и hiasm не совместимые
Кто же запретил до ума довести, сделайте и все будут Вам благодарны
карма: 19

0
Ответов: 257
Рейтинг: -2
#9: 2013-10-31 23:18:41 ЛС | профиль | цитата
картинка не может быть в несколько страниц. Компоненты для работы с world ( те что для заполнения шаблонов) не работают
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#10: 2013-10-31 23:38:43 ЛС | профиль | цитата
mudfactory писал(а):
я немного не понял что вы там поменяли
Tad писал(а):
Прочерки ставь.
в пустые ячейки.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 257
Рейтинг: -2
#11: 2013-10-31 23:44:26 ЛС | профиль | цитата
достаточно лишь написать бордер колапс в свойствах, тогда накладываться рамки не будут. Но проблема с тем что свойства таблицы задать не возможно так и осталась(

Tad, я кстати в ЛС писал, не знаю дошло или нет.
карма: 0

0
Разработчик
Ответов: 26153
Рейтинг: 2127
#12: 2013-11-01 00:15:13 ЛС | профиль | цитата
mudfactory писал(а):
Но проблема с тем что свойства таблицы задать не возможно так и осталась

Компонент MST_HTML никогда не был предназначен для построения шаблональных таблиц, только для вывода таблицы "как есть" в браузер. Если тебе необходима своя собственная таблица, то решай ее собственным текстовым файлом HTML, компонент не будет переделываться специально для твоих задач.
карма: 22

0
Ответов: 257
Рейтинг: -2
#13: 2013-11-01 00:25:06 ЛС | профиль | цитата
я думаю распечатать таблицу - не такая уж редкая задача. Но это сделать вообще не реально, как и вообще какой-нибудь документ распечатать (если он больше 1й страницы). Чтоб нормально отобразить 2 строчки текста, нужно написать 2 страницы HTML кода, и еще не факт что браузер это все потом не сожмет и все форматирование не съедет
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#14: 2013-11-01 01:14:05 ЛС | профиль | цитата
mudfactory писал(а):
какой-нибудь документ распечатать (если он больше 1й страницы).
Не надо ля-ля.
Прекрасно печатают ежемесячный остаток радиодеталей в двух мастерских по ремонту электроники. Примерно 12-15 листов. (программа сделана мной в HiAsm-е с использованием этого компонента MST_HTML )
И очень даже красиво получается.
И каждая страничка начинается с названия колонок, а не с разорваной таблицы.
В чем твоя беда (и не только твоя) - SELECT * From; Загнать всё в MTStrTbl.
А всё - там ни нафик не нужно. Ну не надо выводить в Таблицу все 22 000 строк.
И про то, что есть такие слова как Limit и OffSet никто не помнит.
Вобщем “Думай, Вася, думай! (с)”

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 257
Рейтинг: -2
#15: 2013-11-01 01:53:00 ЛС | профиль | цитата
Tad, при чем тут это? Моя таблица, которую я печатаю состоят из 5-10 строк! только перед этой таблицей шапка, реквизиты и т.д., сама таблица должна быть другого размер чем в программе + после нее еще куча всякого текста. Показать как выглядит HTML шаблон и сколько там всего прописано в свойствах каждого элемента, чтоб при предварительном просмотре и выводе на печать форматирование не съезжало?
карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)