× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Hi Nathan, once again i realize my english must be terrible, sorry.

"What if document templates need to be merged with data models?"

The Xml data file contains all the data needed to render the template, to
be short it's the data source, no needs for multiple data sources.

"What if data models are complex, say consisting of data from a dozen or
more database objects?"

Xml data files are complex, an average one contains around 900 tags (with
many nested level). That's why we need a smart editor.

"What if data sources are conditioned based on, say a dozen or more
parameters that must be entered or retrieved at runtime?"

Xml data files are composed using RPG, our programs handle this operation
very easily and are smart enough to resolve any conflict or special
conditions.

"What if reporting needs to be tied to menu items? What if access to menu
items needs to be authorized? What if reporting is tied to, say batch
processing?"

Any report/document is requested through our ERP framework which provides
menu, security and execution (and more) so this is not a real problem.

Of course programmers shield the end-user from the complexity of retrieving
data (what, how, from where ...), calling the deamon, handling errors and
so on. Is that what you mean?

Best regards
--
Marco Facchinetti

Mr S.r.l.

Tel. 035 962885
Cel. 393 9620498

Skype: facchinettimarco


Il giorno gio 15 lug 2021 alle ore 21:01 Nathan Andelin <nandelin@xxxxxxxxx>
ha scritto:

Marco,

Your daemon pool seems like good scalable architecture and a nice utility.

What if document templates need to be merged with data models? What if
data models are complex, say consisting of data from a dozen or more
database objects? What if data sources are conditioned based on, say a
dozen or more parameters that must be entered or retrieved at runtime? What
if reporting needs to be tied to menu items? What if access to menu items
needs to be authorized? What if reporting is tied to, say batch processing?

Do programmers put all that together for users?

Nathan Andelin


On Jul 14, 2021, at 11:02 AM, Marco Facchinetti <
marco.facchinetti@xxxxxxxxx> wrote:

Hi Nathan,

we have a deamon (java) waiting on a dataq, our applications issue
requests
to that deamon including:
- the template name
- the xml data file name
- the type and the name of the output file
- Delivery options (mail, push, ftp, ifs ...)

the deamon process the request and give back errors (if any). Basicly
FreeMarker and xDocReport proces the xml data file and "apply" the tags
implementing FreeMarker syntax.

The daemon itself can easly run in a balanced structure (n istances with
a
router to supply faster response time)

Actually the deamon (FreeMarker + xDocReport) runs in IBM i.

Best regards
--
Marco Facchinetti

Mr S.r.l.

Tel. 035 962885
Cel. 393 9620498

Skype: facchinettimarco


Il giorno mer 14 lug 2021 alle ore 16:38 Nathan Andelin <
nandelin@xxxxxxxxx>
ha scritto:

Hi Marco,

You've made it quite clear that you want to provide users with tooling
that
helps them design report/document templates. You've also made it clear
your
reasons for users being involved in document design (i.e. the users are
more knowledgeable about certain content and how it must be placed in,
say
insurance contracts). But you seem to be avoiding saying much about what
you might do with templates after users have completed them. You did
mention that you provide an application and data. Could you fill in the
steps you take to implement the report/document generation after users
complete template designs?

Nathan








On Tue, Jul 13, 2021 at 3:42 AM Marco Facchinetti <
marco.facchinetti@xxxxxxxxx> wrote:

Hi Nathan and John, sorry I come late but we are very busy.

I restate that my English is what is it, so please be gentle.

What we are looking for is a tool that helps the end user to compose
documents of a certain complexity with:
- quality texts and formatting
- data from applications
- the possibility of including certain sections on the basis of data
(conditions) coming from the applications.

As a company, the best solution is for the end user to be able to
compose
these documents independently for two main reasons:
- The end user has the knowledge of what to put in the document, we
don't.
- If the product requires continuous assistance from us, the delivery
times
will be unsatisfactory

What the current solution (Freemarker + xDocReport) is missing is:
- Stability and reliability on complex documents
- A wygiwys type editor that can be used in a browser
- An editor that understands the syntax of the two products and helps
in
composing the templates
- The ability to edit templates and test them immediately without
intermediate operations

What can I say about the concept of separation between the end user and
technicians in the development of reports or documents?
I know for a fact that the boundary lies in the fact that sometimes as
programmers we have to guarantee a certain set of rules driven by
precise
business rules, other times it is necessary to provide flexibility.
There
is no single answer only the best tool for the specific situation.

A practical example in our application are invoices and contracts.
Invoices formatting provide very strict rules for which the end user
can
only interact in choosing the text, color, font, position, image to use
but
never on the presence or absence of certain contents.
In the contracts we limit ourselves to providing the appropriate
conditions
and related data to the end user who has the task of drafting the text
of
the contract. I think the most common example is insurance, you
basically
buy a product but you can add options that need specific details. Each
of
these options has distinct sections (legal, functional and operational)
which can be very different between different insurances. It could
never
be
us as programmers who provide the content and modes of these options.

One thing that I envy a lot to other development platforms is the
almost
total absence of affordable products that address these issues. The
marriage between Freemarker and xDocReport has paid off but has also
cost a
lot in terms of maintenance and assistance to end users. I would have
gladly paid for a solution that included both.

A final consideration: it seems strange to me to be the only one to
feel
this need, as everyone is satisfied with the low and poor level of
document
production present on the IBM i platform.

Thanks again
--
Marco Facchinetti

Mr S.r.l.

Tel. 035 962885
Cel. 393 9620498

Skype: facchinettimarco


Il giorno ven 9 lug 2021 alle ore 01:48 Nathan Andelin <
nandelin@xxxxxxxxx

ha scritto:

John,

I understand that you're advocating that developers take no
responsibility
for reporting once a reporting system is set up for users. I'm aware
of
use
cases where that works great, including ones where I was the "user"
who
took full responsibility and control over reporting. Very often,
medium
to
large organizations put together "business intelligence" teams, which
are
managed by "users", who often select their own tooling, which time and
again cost hundreds of thousands of dollars, in which the IT
department
may
not have any responsibility whatsoever.

However, full user control does not appear to be what Marco has been
proposing, regardless of what you may be advocating for, or what you
think.
That was made clear by the types of tools Marco is using (Freemarker,
xReportDoc) and proposing (ReportBro), plus his delineation of user
responsibilities (report layout plus output conditions). I suggest
that
you
look at those back-end frameworks and see for yourself that they
require
significant Java and Python coding experience.

I won't take time to respond to your elongated position statement
because I
don't think you would have written it, except for your fundamental
misunderstanding about what Marco might be proposing.

Nathan.



On Thu, Jul 8, 2021 at 4:26 PM John Yeung <gallium.arsenide@xxxxxxxxx

wrote:

On Thu, Jul 8, 2021 at 11:40 AM Nathan Andelin <nandelin@xxxxxxxxx>
wrote:

In the context of tools and processes that generate reports I
really
don't
understand why someone might push for a division of work between
"users"
and "developers".

I don't care what the context is, I will *always* push for a division
of work between users and developers.

Maybe we just have different ideas of what a user is and should be,
and what a developer is and should be.

I really don't understand why Marco raised the point by
suggesting a difference in skill levels.

It was several messages ago, so let's revisit exactly what he said.
This is the only place I found where he mentions skill levels:

Marco wrote:
As I see it, I understand that your system is very good if people
with
a
higher level skill than the end user manage the templates. I'm
wrong?

Keep in mind that English is not his first language. But essentially,
all he is saying is that your proposal entails developers being
involved with the templates. I think we are all in agreement there.

I am not sure why you seem to be put off by and fixated on the
mention
of "skill levels". Do you object to the implication that developers
have a "higher" skill level than users? I don't think Marco meant to
disparage users in any way. I'm sure skill level here simply refers
to
programming ability.

Perhaps Marco will chime in and explain why his shop divides
reporting
tools and processes between 2 types of people (i.e. evidently users
and
programmers).

I would argue you are the one with two types of people involved,
users
and programmers. In Marco's model, once the system is installed, only
users are involved.

Since the number of output
conditions is so small and the amount of work to code one is so
trivial,
why would anyone die on a cross defending how that belongs in one
court
or
the other?

This is telling. This is precisely the attitude which indicates to me
that we must have very different ideas about what a developer is for,
and how they go about their work.

Without making any value judgments, and forgetting completely about
Marco's scenario, let's say we have a clerical worker and a
programmer. Further, let's say our clerical worker does not have any
programming skills. They were hired to do typing, filing, and
miscellaneous manual tasks.

Now, again without making any value judgments, let's say our clerical
worker happens to type at 60 wpm. And let's say our programmer
happens
to be a great typer, at 90 wpm.

How do we best leverage the respective abilities of these workers?
Even though this particular programmer might be 50% more efficient at
typing than the clerical worker, we *still* don't assign clerical
typing tasks to the programmer. We have the programmer spending as
much time as possible on programming-related work.
"Programming-related" could include collaborating with the clerk to
develop software that increases the quantity and/or quality of what
the clerk can accomplish in a given amount of time.

I am going to die on that cross because there is a real opportunity
cost to having the developer spend time on "small" and "trivial"
things. My workplace is actually in that place now. Our tiny
programming staff is busy doing endless small and trivial things. We
have no time to work on big things that can really leverage our
abilities and provide significant *and essentially permanent* value
to
the company. Even if we do manage to start on a bigger project, the
constant interruptions to do "ridiculously easy" things is
nevertheless disruptive.

Please understand that I'm not even talking only about tasks that
could realistically be done by either the user or the developer. I'm
saying that even within the sphere of tasks that can ONLY be done by
a
developer, if the developer is spending all their time on the
smallest, easiest tasks, but has the programming ability to do
bigger,
more impactful things, the organization is not getting as much value
from the developer as they could.

Again, the idea that output conditions like that might be divided
between
users or programmers seems contrived to me.

You are the only one doing the dividing. I am advocating for the user
to have full control and responsibility. I do not want the developer
to be involved AT ALL once the system is set up.

John Y.
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/midrange-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.