I have a printer (in my case a Brother MFC-990CW) - a combined printer & scanner.
I did the usual things - went to the Brother Support site, followed the pre-installation steps, downloaded the shell script and ran it.
Opened up System Tools>Printers (I'm using Lubuntu on the netbook involved).
Added a network printer, it finds the printer as shown below:
Then I go on to select the driver and it looks hunky dory - except, it doesn't print. I get jobs on the print queue saying cannot connect to printer.
So what gives?
In my case, after trying quite a few things, it turned out to be very simple.
It wasn't resolving the network name - BRN001BA96E9A3A
I have the printer on a fixed IP address, so all I had to do was replace the printer network name with the IP address - then it all worked.
I hope I save some people some time.
Peter Tyrrell's musings on Information Technology - what's changed, what's stayed the same. Advice, anecdotes, lessons learned. Articles will range from serious to humorous - but I won't tell you which are which!
Search This Blog
Monday, October 26, 2015
Friday, October 23, 2015
Integration Discombobulation
“The state of confusion brought on by the overwhelming challenge of the flow of data between disparate applications both within and without your organization.”
There is a growing concern among organizations
of all sizes, that things may be “falling through the cracks” – why is this
so? From my experience, there is the
pressure from business to “just get it working” – which we do. Sometimes we have the luxury of a reasonable
budget, ample time to elicit full requirements, design the outcome and create
the solution… Sometimes…
But that is not always so, particularly
when things change AFTER the solution is in place, as the business tries to
slim down on operational costs to maintain profits.
This leads to a variety of bespoke
solutions. Have you ever seen any of the
following solutions?
¤
People create “macros” in tools
such as Excel to “manipulate” data into a desired format.
¤
Data is sent/received as
attachments in emails.
¤
Data from files/reports is entered
“by hand” into your systems of record.
¤
Information is sent to the
wrong party – which can be embarrassing or worse, breaching a commercial
confidence.
And when things go wrong, as they
invariably do, what happens? Sometimes
the consequences have minimal business impact, a simple re-sending of an email
may suffice. But what happens when the
excrement hits the air movement device?
There can be business costs, penalties, even loss of clients. Lawsuits, loss of confidence in your organization’s
products or services – the list goes on.
It is high time that organizations realize
that the flow of data – either within (between an organization’s applications)
and without (with your trading partners) needs to be managed and controlled in
a standard, reliable and robust manner.
There have been many tags given to this, one of which is the Enterprise
Services Bus or ESB. However many of
these types of solutions do not capture the “lower level” manual processes and
automate them.
Several popular tools purport to address
this problem space. Unfortunately, these
solutions become more complex than the problems they are attempting to resolve. The solution you require must allow Business
Analysts to create process flows without the need for programming.
Let’s take a look at the 4 key areas that
such a solution must provide…
1.
Transportation – by what means will the data move from application to application;
organization to organization?
2.
Transformation – what data format is required so the recipient can process it
without error?
3.
Orchestration – how will process flows with multiple steps/stages by managed, and
what happens if there is a failure?
4.
Administration – how will process flows by designed, created and deployed? Who can
update process flows? Who manages the operational aspects?
Transportation must be
able to handle modern methods such as RESTful web services as well as older
methods such as File Transfer (FTP), email (POP3, SMTP), etc.
Ideally, we should be able to create a
profile for each trading partner, or internal application, that defines the
method of transport they use. In this
way we can have multiple trading partners sending data using different methods
of transportation.
Transformation must
allow the business analyst to map the data format of the trading partner to
that of the receiving application. And
there are 2 aspects of this:
1.
The format of the data may be
different – for example the incoming data may be in an XML structure, but the
receiving application requires it in a table in a RDBMS (Relational Database).
2.
The actual incoming data
elements need to be mapped to their receiving counterpart. There may be other functions required to
manipulate the data element. There may
also be the need for data augmentation or enrichment.
All this needs to be done without
programming by Business Analysts.
Orchestration must
control the steps in a process flow.
This may mean that the flow needs to fork and perform multiple parallel
flows, or it may be a simple, sequential series of steps. It also needs to handle exceptions or error
conditions, when (not if) something goes awry.
Although not strictly Orchestration, the solution should – where possible
– allow a process flow to be resumed at the point it failed, once the issue has
been resolved.
Administration must
provide a management framework to secure the creation and amendment of process
flows. This includes the deployment into
Testing, Quality Assurance, User Acceptance Testing and Production
environments.
Summing it all up
Integration means that data flows from the
provider and it is delivered to the recipient in the format and method such
that the recipient can process it. And human
intervention must be removed from this process flow – it must be automated and
managed.
If you like, it is Business Process Integration and Business Process Automation rolled up in one.
Wednesday, June 24, 2015
Business Process Automation & Integration
There is a heap of information on Business Process Automation - so I'm not going to go into great lengths to talk about the different nuances.
Instead I'm going to talk about a few hypothetical cases...
Let's suppose you work in a business that provides some form of product. Some of your buyers send through orders via email. Usually the email has an attachment. It could be an Excel spreadsheet, a CSV file or some other format. You need to get this information into your company's ERP or in-house application - henceforth let's just call it ERP for simplicity's sake. Perhaps you have set up an special email address to which your clients can email their orders - let's call it orders@mycompany.com
So it's somebody's job to periodically check this Inbox to see if there are orders to be processed. If there is an email, then the attachment is saved. Then you edit the attachment into a specific form that will allow it to be loaded into your ERP for processing. You need to check that the load process worked OK and maybe you have to send an email back to your client to advise them that their orders were accepted and perhaps even give them tracking information.
There's a lot that could go wrong. But the main problem is that we are relying on a person to manually tend to the whole process of getting the data into shape, loading it, checking the result and communicating back to the client.
There are 2 major processes involved here - the automation of multiple manual steps and the integration into your company's ERP.
Let's deal with the automation side of things first.
In Case 1 we need to first handle how the data gets to our company. At a high level, we call this Transportation - how the data is moved. We see that email is the method of transportation, or more technically it is SMTP & POP.
Next we have to consider the data "payload". And there are 2 aspects to this:
However, your business processing sequence will still need to have the same building blocks - handle the transportation method from one application, transform the data (for the receiving application), transport it into the receiving application and then kick off the processing.
If this sounds like something your company needs, then I suggest you have a look at LANSA Composer and automate your manual processes.
Instead I'm going to talk about a few hypothetical cases...
Case 1 - incoming orders
Let's suppose you work in a business that provides some form of product. Some of your buyers send through orders via email. Usually the email has an attachment. It could be an Excel spreadsheet, a CSV file or some other format. You need to get this information into your company's ERP or in-house application - henceforth let's just call it ERP for simplicity's sake. Perhaps you have set up an special email address to which your clients can email their orders - let's call it orders@mycompany.com
So it's somebody's job to periodically check this Inbox to see if there are orders to be processed. If there is an email, then the attachment is saved. Then you edit the attachment into a specific form that will allow it to be loaded into your ERP for processing. You need to check that the load process worked OK and maybe you have to send an email back to your client to advise them that their orders were accepted and perhaps even give them tracking information.
There's a lot that could go wrong. But the main problem is that we are relying on a person to manually tend to the whole process of getting the data into shape, loading it, checking the result and communicating back to the client.
There are 2 major processes involved here - the automation of multiple manual steps and the integration into your company's ERP.
Let's deal with the automation side of things first.
In Case 1 we need to first handle how the data gets to our company. At a high level, we call this Transportation - how the data is moved. We see that email is the method of transportation, or more technically it is SMTP & POP.
Next we have to consider the data "payload". And there are 2 aspects to this:
- What file type is being used, and
- What data format is being used
In Case 1, let's assume it is a simple text file using CSV data formatting.
So we need to create a process that reads emails coming into a specific Inbox, then detach the file for further processing.
However, it is unlikely that the incoming format is exactly what we need in order to load into our ERP. So we need to munge it into shape. Quite often this is a very manual process and prone to errors. We need to map the incoming data elements to the format required by our ERP. This involves the Transformation of the data. It is also where the Integration part of this blog's heading comes into play. In a Transformation process we are concerned about getting the data into the right shape and moving it to the right data element on the receiving side. Now this too may vary just as the incoming data varied. We could be loading it into a flat file that is read by a loader program. Or we could be directly updating an Incoming Orders table in our ERP, where it will be processed by an existing mechanism.
In some cases we may need to create the flat file, and then invoke the loader program as a subsequent step.
As you can see from Case 1, we have a few steps that need to work together, much like the separate musicians in a band - so we call this Orchestration - ensuring that the process steps work together in a flow that produces the desired outcome.
And to control the creation of these Processing Sequences and who can access them, we need the management layer - or Administration
In some cases we may need to create the flat file, and then invoke the loader program as a subsequent step.
As you can see from Case 1, we have a few steps that need to work together, much like the separate musicians in a band - so we call this Orchestration - ensuring that the process steps work together in a flow that produces the desired outcome.
And to control the creation of these Processing Sequences and who can access them, we need the management layer - or Administration
Case 2 - Outgoing Notifications
In much the same way as we handled Incoming Orders, we will handle Outgoing Notifications. We need to create a Processing Sequence that handles transportation, transformation and orchestration. Our ERP may have finished processing some orders and we want to notify the client of the outcome. The client expects us to FTP an Excel file to a specific folder. Our ERP creates the XML files in specific client folders - each client has its own folder. The process will watch for files being created in this folder. When a file is detected, it is transferred to the client's remote folder via an FTP connection. We may have agreed to convert the XML into an Excel spreadsheet for this specific client. After successfully moving the file, we move it to an Archive folder for this client and we send the client an email advising them that a file has been FTP'd to them, along with any other pertinent data.Case 3 - Application to Application Integration
In our last case, let's look at intra-company process flows. Quite often a company will end up with multiple applications running on different platforms. Some will be older, perhaps authored in-house, but comprising the very core of the company's systems. New applications may be acquired - sometimes through acquisition. Rarely do these applications work together without some form of integration. What we need is something that can handle both older methods of exchanging data (like file transfer) with newer methods such as web services - both SOAP and RESTful.However, your business processing sequence will still need to have the same building blocks - handle the transportation method from one application, transform the data (for the receiving application), transport it into the receiving application and then kick off the processing.
Summary
To wrap it up, you want a solution that a business analyst can use to define your business process flows - think of it as workflow for applications. You don't want to be writing bespoke programs that provide point solutions, as these will just add to your maintenance overhead. You want a centralised, secure, code-free solution that handles multiple platforms, data formats, transportation methods in a secure, repeatable fashion.If this sounds like something your company needs, then I suggest you have a look at LANSA Composer and automate your manual processes.
Subscribe to:
Posts (Atom)