Ответить

Напишите ваше сообщение и нажмите отправить
Свойства

Вернуться назад

Обзор темы (новые сверху)

tipsun
2014.09.07 02:40

Епт, если результат сразу распечатать, то фигня получается. А вот когда отдельно в документ сохраняешь - норм, и его распечатка тоже норм проходит.

tipsun
2014.09.05 23:15

Да я уже по-другому сделал))
Лучше всего у меня получается сливать таблицу MS Exel в мой шаблон указывая тип документа "Письмо"
Этот код мне помогает собрать разбитый адрес в таблице MS Exel с разделителем "," примерно так: |город|улица|дом|квартира| => г. Город, ул. Улица, д. #, кв. #
Слияние помогает избегать рутинной работы, таких строк у меня бывает много, а значит столько же писем должно быть.

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php // MS Word
 
// Добавить поле можно комбинацией: [Ctrl] + [F9]
// Поле это { }
 
/*
    Я решил через переменные сделать.
    Потом удобней будет искать и редактировать.
    Ибо в MS Word каждый раз надо добавлять поля комбинацией.
    Тут однотипный код, написали 1 строку с каждого блока,
    после копируйте все поле и можно редактировать.
    Можно и попроще, в 2 последних блока сделать.
    Можно попробовать оптимизировать, не считая кол-во записей,
    сразу как-то в блоке 4, но мне и так хватает :)
*/
 
// Объявление переменных
{SET Счетчик 0}{SET Строка ""}
{SET Элемент1 ""}
{SET Элемент2 ""}
{SET Элемент3 ""}
{SET Элемент4 ""}
 
// Подготовка Полей слияния. Приводим в конечный вид.
{IF Элемент1 <> "" {SET Элемент1 {MERGEFIELD ПолеСлияния1 \"добавим что-нибудь в конец строки"}}}
{IF Элемент2 <> "" {SET Элемент2 {MERGEFIELD ПолеСлияния2 \"добавим что-нибудь в начало строки"}}}
{IF Элемент3 <> "" {SET Элемент3 {MERGEFIELD ПолеСлияния3}}}
{IF Элемент4 <> "" {SET Элемент4 {MERGEFIELD ПолеСлияния4}}}
 
// Другой вариант:
{IF Элемент5 <> "" {SET Элемент5 {MERGEFIELD ПолеСлияния5}} {SET Элемент5 ""}}
 
// Подсчет количества записей (т.е. не пустых записей)
{IF Элемент1 <> "" {SET Счетчик {=Счетчик+1}}}
{IF Элемент2 <> "" {SET Счетчик {=Счетчик+1}}}
{IF Элемент3 <> "" {SET Счетчик {=Счетчик+1}}}
{IF Элемент4 <> "" {SET Счетчик {=Счетчик+1}}}
 
/*
    Если элемент присутствует, уменьшаем счетчик
    для операции определения нужна ли запятая или нет.
*/
// Формирование переменной Строка
{IF Элемент1 <> "" {SET Счетчик {=Счетчик-1}}}
{IF Элемент1 <> "" {SET Строка {IF <= Счетчик "{Строка}{Элемент1}, " "{Строка}{Элемент1}"}}}
{IF Элемент2 <> "" {SET Счетчик {=Счетчик-1}}}
{IF Элемент2 <> "" {SET Строка {IF <= Счетчик "{Строка}{Элемент2}, " "{Строка}{Элемент2}"}}}
{IF Элемент3 <> "" {SET Счетчик {=Счетчик-1}}}
{IF Элемент3 <> "" {SET Строка {IF <= Счетчик "{Строка}{Элемент3}, " "{Строка}{Элемент3}"}}}
{IF Элемент4 <> "" {SET Счетчик {=Счетчик-1}}}
{IF Элемент4 <> "" {SET Строка {IF <= Счетчик "{Строка}{Элемент4}, " "{Строка}{Элемент4}"}}}
 
// ------- Совсем другой "безПеременный" вариант (!!!НЕ ТЕСТИРОВАЛ!!!):
{IF ПолеСлияния5 <> "" {SET Счетчик {=Счетчик+1}}}
// ...
 
{IF ПолеСлияния5 <> "" {SET Счетчик {=Счетчик-1}}}
{IF ПолеСлияния5 <> "" {SET Строка {IF <= Счетчик "{Строка}{ПолеСлияния5 \b "добавим в начало" \f "добавим в конец"}, " "{Строка}{ПолеСлияния5 \b "добавим в начало" \f "добавим в конец"}"}}}
 
{Строка// Результат
Gemorroj
2014.09.05 18:24

зачем код стер?)

tipsun
2014.09.05 18:05

Получилось.

tipsun
2014.09.04 17:32

Нет, я в MS Word пытаюсь слияние организовать))
Там есть:
{SET переменная "значение"}
{= 1 + 1}
{IF "значение" = переменная "1" "2"}
{MERGEFIELD Переменная \b "before" \f "after"}
Добавлено спустя   3 минуты  33 секунды:
У меня есть файл MS Exel. В нём записи запросов.
На каждый запрос нужен ответ с адресом.
Вот адрес через "," я могу огранизовать простым условием, если есть просто в конце добавить "," но последний элемент будет содержать ","
Вот в чем вся проблема

Gemorroj
2014.09.04 17:30

для вывода implode используешь?
можно обработать массив через array_filter, например.

tipsun
2014.09.04 14:05

Как правильно разделить несколько переменных через запятую, если неизвестно содержит ли предыдущая или следующая переменная запись?
Примеры:
Строка переменных: {1}{2}{3}{4}{5}{6}{7}
Значение есть только у {1} и {5}, или {3} и {6}, или {2}, {3} и {7} и т.д.
Можно проверить переменную на содержание записи { IF 1 = "" "yes" "no" }
Можно использовать дополнительную переменную и выводить её значение
Проставив запятые обычным образом не катит: {1},{2},{3},{4},{5},{6},{7} т.к. с заданными условия получим: , , , +, +, , например

Gemorroj
2012.05.17 10:20

можно совместить эти варианты. а уведомлять админа или модераторов - наверное можно сделать как настройку в группе.

Nu3oN
2012.05.17 01:24

в общем вопрос в следующем:
Пишу скрипт групп. Зациклился на решение задачи со вступлением в закрытую группу!

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

LEXIN
2012.05.01 13:51

Не, это я не осилил. Пытался в код echo и print вставлять, но получаю только ошибки на выводе.

Gemorroj
2012.05.01 10:54

ну так там print_r и exit стоит. я думал с таким массивом ты уже разберешься как дальше работать.

LEXIN
2012.05.01 00:11

sad Я не смог разобраться.
Скрипт выдает:

Array
(
    [site1.ru] => Array
        (
            [0] => sub1.site1.ru
            [1] => sub2.site1.ru
            [2] => sub3.site1.ru
        )

    [site2.ru] => Array
        (
        )

    [site3.ru] => Array
        (
        )

    [site4.ru] => Array
        (
        )

)

Gemorroj
2012.04.30 22:44

надеюсь разберешься

LEXIN
2012.04.30 13:57

Gemorroj, хорошо.

Gemorroj
2012.04.30 11:25

блин, вчера дома немного подправил скрипт, потом настроение пропало) сегодня вечером доделаю

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.1
0.005 s