Добро пожаловать на Форум неформального общения сотрудников УИС
![]() |
Добро пожаловать на Форум неформального общения сотрудников УИС. Без регистрации вам доступна вся информация на форуме только для чтения. Создание новых тем и ответы в существующие будут доступны после регистрации:
|
#1037
Отправлено 10 Март 2016 - 12:58
1. Закинуть файл "Адресный листок прибытия.dot" в папку Reports: https://yadi.sk/i/SIdLnqFCq3hpB
2. Создаете макрос "Адресный листок прибытия". Вызывать стоя на выбранном абоненте
LOCAL loWord, loDoc, loMyItem, lnWordRowNum
LOCAL loTable as Word.Table
LOCAL Rng as Word.Range
LOCAL oRng as Word.Range
LOCAL oShp as Word.Shape
LOCAL lcResult
LOCAL FotoFile
LOCAL path, lcBuffer, lcBuffer1
LOCAL lcI, lcJ
LOCAL DOCX
LOCAL TEXT, FLAG
DECLARE INTEGER GetPrivateProfileString IN Win32API;
STRING cSection, STRING cKey, STRING cDefault, STRING @cBuffer, ;
INTEGER nBufferSize, STRING cINIFile
path = addbs(_prg) + gcstationinifile
lcBuffer = space(1024)
GetPrivateProfileString("System", "Reports", "", @lcBuffer, len(lcBuffer), path)
for lcI = 1024 to 1 step -1
if substr(lcBuffer, lcI, 1) = ""
exit
endif
next
lcBuffer1 = space(1024)
GetPrivateProfileString("System", "Docs", "", @lcBuffer1, len(lcBuffer1), path)
for lcJ = 1024 to 1 step -1
if substr(lcBuffer1, lcJ, 1) = ""
exit
endif
next
loWord = createobject('Word.Application')
loDoc = m.loWord.Documents.Add(substr(lcBuffer, 1, lcI) + 'Адресный листок прибытия.dot')
m.loWord.Visible = .T.
for my_formCount = 1 to _screen.FormCount
if _screen.Forms(my_formCount).name = 'kart_lf'
SELECT (_screen.Forms(my_formCount).my_MainCursor)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Фамилия]', .F., .F., .F., .F., .F., .T., .F., .F., proper(alltrim(vfamily)), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Имя]', .F., .F., .F., .F., .F., .T., .F., .F., alltrim(vname), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Отчество]', .F., .F., .F., .F., .F., .T., .F., .F., alltrim(vlastname), 2)
* ItemPerson
loMyItem = itemperson
select vdatar, vpol, vmestorgos, vmestorobl, vmestorgor, vmestoradr, ;
vmestopgos, vmestopobl, vmestopgor, vmestopadr, vnachsroka, vkonecsrok, ;
vgrajdanst from card where itemperson==loMyItem into cursor buf_cursor1
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Д]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor1.vdatar, 1, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Месяц]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor1.vdatar, 4, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Год]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor1.vdatar, 7, 4), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Пол]', .F., .F., .F., .F., .F., .T., .F., .F., SField(buf_cursor1.vpol,")g"), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Страна рождения]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vmestorgos), 'pc1', ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Край рождения]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vmestorobl), 'pc2', ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Город рождения]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vmestorgor), 'pc3', ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Страна жительства]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vmestorgos), 'pc1', ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Край жительства]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vmestopobl), 'pc2', ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Город жительства]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vmestopgor), 'pc3', ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Адрес рождения]', .F., .F., .F., .F., .F., .T., .F., .F., alltrim(buf_cursor1.vmestoradr), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Адрес жительства]', .F., .F., .F., .F., .F., .T., .F., .F., alltrim(buf_cursor1.vmestopadr), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Гражданство]', .F., .F., .F., .F., .F., .T., .F., .F., RField(alltrim(buf_cursor1.vgrajdanst), "pc1", ", ", ""), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Н]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor1.vnachsroka, 1, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Месяц Н]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor1.vnachsroka, 4, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[ГН]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor1.vnachsroka, 7, 4), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Конец срока]', .F., .F., .F., .F., .F., .T., .F., .F., buf_cursor1.vkonecsrok, 2)
select vseria, vnomer, vdatavyd, vkemvydan from docum where itemparent==loMyItem and vdokum=='()' into cursor buf_cursor2
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Серия]', .F., .F., .F., .F., .F., .T., .F., .F., alltrim(buf_cursor2.vseria), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Номер]', .F., .F., .F., .F., .F., .T., .F., .F., alltrim(buf_cursor2.vnomer), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[П]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor2.vdatavyd, 1, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Месяц П]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor2.vdatavyd, 4, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[ГП]', .F., .F., .F., .F., .F., .T., .F., .F., substr(buf_cursor2.vdatavyd, 7, 4), 2)
for each oRng in loDoc.StoryRanges
oRng.Fields.Update
for each oShp In oRng.ShapeRange
if oShp.Name == "Надпись 2"
oShp.TextFrame.TextRange.Text = " " + alltrim(buf_cursor2.vkemvydan)
endif
oShp.TextFrame.TextRange.Fields.Update
next oShp
oRng = oRng.NextStoryRange
Loop Until oRng is Nothing
next oRng
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Т]', .F., .F., .F., .F., .F., .T., .F., .F., substr(dtoc(date()), 1, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[Месяц Т]', .F., .F., .F., .F., .F., .T., .F., .F., substr(dtoc(date()), 4, 2), 2)
m.loWord.Selection.Find.ClearFormatting
m.loWord.Selection.Find.Replacement.ClearFormatting
m.loWord.Selection.Find.Execute('[ГТ]', .F., .F., .F., .F., .F., .T., .F., .F., substr(dtoc(date()), 7, 4), 2)
endif
next
Сообщение отредактировал TwoFace: 10 Март 2016 - 13:10
|
Поблагодарил (и): 1 пользователь:
|
|
#1040
Отправлено 10 Март 2016 - 15:15
TwoFace (10 Март 2016 - 12:58) писал:
1. Закинуть файл "Адресный листок прибытия.dot" в папку Reports: https://yadi.sk/i/SIdLnqFCq3hpB
2. Создаете макрос "Адресный листок прибытия". Вызывать стоя на выбранном абоненте
Сообщение отредактировал IskanderMax: 11 Март 2016 - 07:15
#1043
Отправлено 11 Март 2016 - 07:18
лоер (10 Март 2016 - 23:26) писал:
slavatitov (10 Март 2016 - 16:14) писал:
Сообщение отредактировал IskanderMax: 11 Март 2016 - 07:38
#1045
Отправлено 16 Март 2016 - 17:42
#1047 Гость_aleksandr174_*
Отправлено 19 Март 2016 - 10:07
Не могу скачать АКУС 1.45 с фтп твери.
Помогите скачать это обновление или может есть альтернативные ссылки, или скиньте в почту
Пароль к архивам где взять?
Заранее СПАСИБО!!!!
Сообщение отредактировал aleksandr174: 19 Март 2016 - 10:09
#1048
Отправлено 19 Март 2016 - 10:19
aleksandr174 (19 Март 2016 - 10:07) писал:
Не могу скачать АКУС 1.45 с фтп твери.
Помогите скачать это обновление или может есть альтернативные ссылки, или скиньте в почту
Пароль к архивам где взять?
Заранее СПАСИБО!!!!
Коллега, заранее спасибо, если вы не будете у коллег вызывать когнитивный диссонанс .....
З.Ы. Чё нужно то ?
#1049 Гость_aleksandr174_*
#1050
Отправлено 21 Март 2016 - 18:09



