是否可以通过编程获取 FILTERGROUP 的当前值?
我想隐藏/显示仅在 FILTERGROUP 中的特定选择下才有意义的属性。
是否可以通过编程获取 FILTERGROUP 的当前值?
我想隐藏/显示仅在 FILTERGROUP 中的特定选择下才有意义的属性。
有这样的代码
CLASS Type;
name = DATA STRING (Type);
CLASS Plan;
date = DATA DATE (Plan);
type = DATA Type (Plan);
amount = DATA INTEGER (Plan);
需要在表单的表格中显示所选月份和年份的所有天数。对于有计划条目的日子,显示该计划条目;对于没有计划条目的日子,显示一个空单元格。
像这样(此代码不起作用)
filterYear = DATA LOCAL INTEGER;
filterMonth = DATA LOCAL Month;
FORM planReport
OBJECTS dp = (d = DATE, p = Plan)
PROPERTIES extractDay(d), type(p), amount(p)
FILTERS
d >= toDateFormat((CONCAT '-', filterYear(), filterMonth(), 1), 'YYYY-MM-DD')
AND
d <= lastDayOfMonth(toDateFormat((CONCAT '-', filterYear(), filterMonth(), 1), 'YYYY-MM-DD'))
;
如何从 XML 文件导入数据?我找不到任何使用 IMPORT XML 的示例。我不明白如何正确使用它。如果不同嵌套级别存在迭代,如何迭代对象?导入应该在什么结构中进行?
具体来说,我需要从 1c 以 EnterpriseData 格式导入发票
它看起来像这样:
标题
<?xml version="1.0"?>
<Message xmlns:msg="http://www.1c.ru/SSL/Exchange/Message" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<msg:Header>
<msg:Format>http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3</msg:Format>
<msg:CreationDate>2024-12-12T09:38:51</msg:CreationDate>
<msg:AvailableVersion>1.3</msg:AvailableVersion>
</msg:Header>
<Body xmlns="http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.3">
然后是账单本身
<Документ.ЗаказКлиента>
<КлючевыеСвойства>
<Ссылка>98c212ed-c377-11e5-b9f7-88532ee9a795</Ссылка>
<Дата>2016-01-11T12:00:00</Дата>
<Номер>0000-000001</Номер>
<Организация>
<Ссылка>98c212d9-c377-11e5-b9f7-88532ee9a795</Ссылка>
<Наименование>***</Наименование>
<НаименованиеСокращенное>***</НаименованиеСокращенное>
<НаименованиеПолное>***</НаименованиеПолное>
<ИНН>***</ИНН>
<ЮридическоеФизическоеЛицо>ФизическоеЛицо</ЮридическоеФизическоеЛицо>
</Организация>
</КлючевыеСвойства>
<Ответственный>
<Ссылка>aa00559e-ad84-4494-88fd-f0826edc46f0</Ссылка>
<Наименование><Не указан></Наименование>
</Ответственный>
<Валюта>
<Ссылка>d85dd251-c377-11e5-b9f7-88532ee9a795</Ссылка>
<Код>643</Код>
<Наименование>руб.</Наименование>
</Валюта>
<Сумма>***</Сумма>
<Контрагент>
<Ссылка>98c212e9-c377-11e5-b9f7-88532ee9a795</Ссылка>
<Наименование>***</Наименование>
<НаименованиеПолное>***</НаименованиеПолное>
<ИНН>***</ИНН>
<КПП>***</КПП>
<ЮридическоеФизическоеЛицо>ЮридическоеЛицо</ЮридическоеФизическоеЛицо>
<СтранаРегистрации>
<Ссылка>a85e20f9-c377-11e5-b9f7-88532ee9a795</Ссылка>
<Код>643</Код>
<Наименование>РОССИЯ</Наименование>
</СтранаРегистрации>
</Контрагент>
<ДанныеВзаиморасчетов>
<КурсВзаиморасчетов>1</КурсВзаиморасчетов>
<КратностьВзаиморасчетов>1</КратностьВзаиморасчетов>
</ДанныеВзаиморасчетов>
<СуммаВключаетНДС>true</СуммаВключаетНДС>
<БанковскийСчетОрганизации>
<Ссылка>98c212dd-c377-11e5-b9f7-88532ee9a795</Ссылка>
<НомерСчета>***</НомерСчета>
<Банк>
<Ссылка>98c212dc-c377-11e5-b9f7-88532ee9a795</Ссылка>
<БИК>***</БИК>
<КоррСчет>***</КоррСчет>
<Наименование>***</Наименование>
</Банк>
<Владелец>
<ОрганизацииСсылка>
<Ссылка>98c212d9-c377-11e5-b9f7-88532ee9a795</Ссылка>
<Наименование>***</Наименование>
<НаименованиеСокращенное>***</НаименованиеСокращенное>
<НаименованиеПолное>***</НаименованиеПолное>
<ИНН>***</ИНН>
<ЮридическоеФизическоеЛицо>ФизическоеЛицо</ЮридическоеФизическоеЛицо>
</ОрганизацииСсылка>
</Владелец>
</БанковскийСчетОрганизации>
<Услуги>
<Строка>
<Номенклатура>
<Ссылка>98c212ec-c377-11e5-b9f7-88532ee9a795</Ссылка>
<НаименованиеПолное>***</НаименованиеПолное>
<КодВПрограмме>00-00000001</КодВПрограмме>
<Наименование>***</Наименование>
</Номенклатура>
<Количество>3</Количество>
<Сумма>***</Сумма>
<Цена>***</Цена>
<СтавкаНДС>БезНДС</СтавкаНДС>
<Содержание>***</Содержание>
</Строка>
</Услуги>
</Документ.ЗаказКлиента>
有一个代码可以将 jasper 报告发送到电子邮件
FORM notificationNewComment
OBJECTS c = Comment
PROPERTIES (c) ticketId, ticketSubject, text, employeeName
;
notifyEmployee(Comment c, Employee e) {
MESSAGE 'notify new comment: ' + name(e) LOG NOWAIT;
LOCAL bodyFile = FILE ();
PRINT notificationNewComment OBJECTS c = c HTML TO bodyFile;
EMAIL
SUBJECT 'TICKETID: [' + id(ticket(c)) + '] Новый комментарий к заявке'
TO address(defaultEmail(e))
BODY bodyFile()
NOWAIT
;
}
转移到生产环境(位于 Docker 中)后,西里尔字母停止显示。它看起来像这样:
我需要在设置中的某个位置设置编码吗?
以及它的链接
<link class=3D"jrWebFont" rel=3D"stylesheet" href=3D"lsf1652873724445115566=
8.html_files/DejaVu Sans_-en_US">
UPD1:我刚刚注意到信中的所有内容都正确显示。只不过所有的字符都换成了问号而已。显然以前在某个地方。
普通信件:
<div style=3D"padding-left:2px;padding-right:2px;"><span style=3D"font-fami=
ly: DejaVu Sans; color: #FFFFFF; font-size: 20px; line-height: 1; *line-hei=
ght: normal; font-weight: bold;">=D0=90=D0=9A=D0=A0: =D0=97=D0=90=D0=AF=D0=
=92=D0=9A=D0=98</span></div></td>
歪字:
<div style=3D"padding-left:2px;padding-right:2px;"><span style=3D"font-fami=
ly: 'DejaVu Sans_-en_US', 'DejaVu Sans'; color: #FFFFFF; font-size: 20px; l=
ine-height: 1; *line-height: normal; font-weight: bold;">=EF=BF=BD=EF=BF=BD=
=EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD: =EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD=
=EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD=EF=BF=BD</s=
pan></div></td>
更新2:
操作系统:Ubuntu 22.04.3
DOCKER:Docker 版本 25.0.1,内部版本 29cf629
JAVA:openjdk 11.0.8 2020-07-14
LSFUSION:6.0-beta0 (292)
services:
server:
container_name: server
image: lsfusion/server:6.0-beta0
volumes:
- ./lsfusion:/lsfusion
networks:
- app
environment:
- LANG=ru_RU.UTF-8
- TZ=Europe/Moscow
- DB_PASSWORD=***
- DB_SERVER=***
- DB_USER=***
- DB_NAME=***
# - JAVA_OPTS=-Xmx4000m
restart: unless-stopped
client:
container_name: client
image: lsfusion/client:6.0-beta0
# ports:
# - 8080
depends_on:
- server
volumes:
- ./conf:/usr/local/tomcat/conf/Catalina
networks:
- nginx
- app
environment:
- LANG=ru_RU.UTF-8
- SERVER_HOST=server
# - SERVER_PORT=7652
# - JAVA_OPTS=-Xmx4000m
restart: unless-stopped
networks:
nginx:
external: true
app:
external: true