Following pseudo code seems ideal, but the object is to send printmerge data to laser engraver w/o operator understanding (or having the chance to screw up) CorelDRAW, file format, etc.
1. Operator selects template from a list of ~10.2. Operator scans barcode which is the name of a datafile (probably, CSV w/.txt extension)3. macro, behind the scenes, uses printmerge functionality to Merge to New Document
Optionally:4. Allows user to select from a list of 8-10 Imposition Layouts5. Sends to a print driver.
If no "takers," Any/All of that "doable" with VBA? I don't see any way to record or access Print Merge functions(?).
Roy Brewer
Could you put the above files on any file sharing? .cdr files please save version up to X8
Where I have a lack of KnowHow: What do you need to send to this printer? Will it work with a 'normal' Corel print job where the Corel document you send to the printer has exactly the size your final output needs? I haven't tested it before, but it should be possible to add a document to a certain print queue.
I also haven't practical experience with that, but it also should be possible to trigger Corel with a command button on an Excel sheet.But where I have tons of experiences is, that you can read in a CSV or Txt (XML, Json, …) file and update or append a row with needed data with one click.
What I also did a few times before is, that I triggered Word or PowerPoint from Excel where I submitted somehow information from the current Excel sheet or the currently visible rows. What I saw with a quick view, Corel can be used for that as well.Means: It should be theoretical possible to have a workbook with macros which has
- A command button you have to click when a scanner provided data to a file and this information is imported to the current sheet. If the information is for a single item, it's no problem to place the cursor to the added / updated line
- Then the user has to do either nothing or set the filter / cursor to a certain line or range. Maybe he needs to update some information not given in the input file in the Excel sheet (e.g. printer or layout)
- The next command button will cause then that the Corel application is started in Excel, creates out of the information from the current row(s) one or more images and send them to a printer.
If all information (with a hint for the layout and printer) is given in the CSV (or similar) file, it's also not a huge challenge to run Corel in a kind of server mode: It scans each 1/5/10/30 sec/min/hour one or more directories for new CSV-Files. If there is something new available, it reads the content, creates out of it a printable file, send it to the printer and renames/delete afterwards the CSV. Depending on the folder the Scanner save's the file, it's also no problem to define for this information printer and layout.
Maybe more detailed information will inspire me to even more possibilities, maybe some other details will force me to say: Mission impossible.
But: If you want me to do this, it will not happen within the next days, since I have to follow a regular job and need to take care about my old mother. If you think, you can do it as well with some hints from my side, maybe it's much faster.
This is obviously possible but are you able to select a specific Imposition layout (probably a custom one) from the existing imposition layouts? Ai mean programmaticaly (from VBA). It is not impossible using API to identify the prind window and then controls on it (FindWindowEX and SendMessage) but not so easy...
The PrintSettings.Layout does not offer this possibility.
My first paragraph started with ' Where I have a lack of KnowHow: …' and this might be exactly the issue you show up. I have no clue what an 'Imposition layout' is, but I know, that's no issue to create a document with exact the size of the sheet to print on. If you have a ruler you can measure the coordinates of certain fields you need to print on. If your information has the same unit as you set up your document, you can say e.g. Place the serial number to x=30 mm and y=150 mm (or inch etc.) Maybe you need to recreate a layout, but I don't consider this as a big problem. Somehow you have to read in the CSV file: If you know, that you are at the column containing the serial number, you can directly say, that this information shall be printed at x,y. If I look at the shown image and I have a file where all variables are in (directly or indirect, maybe you need to parse the e.g. 5 digit of the serial number to the description), I'm pretty sure, that I can create either an image with only the information afterwards printed in the cells or create the entire layout to print it on a nude sheet.
You can find/select the `Imposition layout` on the `Layer` tab of the print form.
You can create such custom layouts in order to save some work. For instance a Visit Card layout like I have is something very useful. But I do not know how to acces this setting using VBA. I am not sure it si possible without API...
Maybe neither using API, on a modal form like the Print one looks to be...