Watermark rev of wt.part on the published drawing
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Watermark rev of wt.part on the published drawing
I am hoping somebody already figured it out, and it is not a costly customization...
- Labels:
-
Other
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
We include Drawing Number, Name & Version in the watermark. This uses standard watermark configurations (we hard branch to watermark file with state hard coded because this was buggy in the past; may revisit). A printed / emailed drawing is traceable to a single object in the system.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Here is to clarify:
The watermark is applied by CreoView/WVS publishing.
The Rev of the WTPart is needed to be on the watermark as well as the date of the release change - we might have rev of the drw different from rev of the WTPart (example: multiassembly drawings)
In Reply to Dmitry Ushamirsky:
I am hoping somebody already figured it out, and it is not a costly customization...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Need Help. 1st time trying to implement watermarking for DRW Printing & Viewing.
I followed the ptc tans/tpis/etc & still not working. Below is my prefs file. Attached is my ini file (asf_01.ini).
I would also like to add date & Version, but have not found the proper property. Only found "epmdoc_lifeCycleState".
I have also attached what the General/Watermark preferences & mapping are set to (image prefs.jpg).
server_prefs.xml also attached.
Any help would be appreciated.
Larry Jett
datajett@aol.com, cadjett@aol.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I forgot to attach an image of the settingsfor: Visualization Configuration Administration - Site (viscfg.jpg).
Larry Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
You can have the system use one of a variety of criteria to select which watermark file to apply; in our business, lifecycle state is the only one that makes sense.
[cid:image001.png@01CF263F.FC9EE2A0]
[cid:image002.png@01CF263F.FC9EE2A0]
Note: This benefits greatly from some good discussion with all affected parties. One can choose to
* embed the watermark in the viewable at the time of publishing, or
* select and apply it at the time of viewing.
Embedding it of course requires re-publish after each state change.
Selecting and applying at the time of viewing is elegant and in our opinion the only way to go.
Need to prepare multiple watermark files and load them here
[cid:image003.png@01CF263F.FC9EE2A0]
This stuff is not necessarily all that evident from PTC documentation...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Thanks Mike,
Look at my attached files, because I think I am doing what you suggest. But just for simple DRW to show LC State & Date.
Then eventually add Version (dont know the property for that yet. cant find it in support search).
You showed option:
embed the watermark in the viewable at the time of publishing
I am trying to set this up to add watermarks for all DRW PDF's published.
I cant get the watermark to show anywhere. When publishing or just viewing. I am probably just one step off.
Thanks
Larry
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I did find the properties for Revision & Date:
I am placing them in this message, so others can find them in future searches.
I also attached an excel with them enclosed:
epmdoc_creatorName
WindchillEPM
user name
epmdoc_modifierName
WindchillEPM
Administrator
epmdoc_instance
WindchillEPM
FALSE
epmdoc_cabinetName
WindchillEPM
Default
epmdoc_templated
WindchillEPM
FALSE
epmdoc_businessType
WindchillEPM
EPMDocument
epmdoc_organizationName
WindchillEPM
XXX
epmdoc_modifyTimestamp
WindchillEPM
2014-02-10 09:43:52 CST
epmdoc_versionInfo
WindchillEPM
B
epmdoc_folderingInfo
WindchillEPM
/Default/XXX
epmdoc_name
WindchillEPM
FILL/EXTERNALXXX MANIFOLD
epmdoc_hasVariance
WindchillEPM
FALSE
epmdoc_lifeCycleState
WindchillEPM
Design
epmdoc_CADName
WindchillEPM
XXX09008.drw
epmdoc_generic
WindchillEPM
FALSE
epmdoc_verified
WindchillEPM
TRUE
epmdoc_docType
WindchillEPM
Drawing
epmdoc_displayIdentity
WindchillEPM
Drawing - XXX09008.drw,
B.2
epmdoc_defaultUnit
WindchillEPM
each
epmdoc_formatName
WindchillEPM
NONE
epmdoc_hasHangingChange
WindchillEPM
FALSE
epmdoc_createTimestamp
WindchillEPM
2013-12-12 09:12:05 CST
epmdoc_containerName
WindchillEPM
XXXYYY
epmdoc_lifeCycleBasic
WindchillEPM
TRUE
epmdoc_collapsible
WindchillEPM
FALSE
epmdoc_topGeneric
WindchillEPM
FALSE
epmdoc_hasPendingChange
WindchillEPM
FALSE
epmdoc_creatorEMail
WindchillEPM
xxx@YYY.com
epmdoc_number
WindchillEPM
XXX09008.DRW
epmdoc_lifeCycleName
WindchillEPM
XXX_LC
epmdoc_iterationDisplayIdentifier
WindchillEPM
B.2
epmdoc_ownerApplication
WindchillEPM
Workgroup Manager
epmdoc_missingDependents
WindchillEPM
FALSE
epmdoc_derived
WindchillEPM
FALSE
epmdoc_modifierFullName
WindchillEPM
Site, Administrator
epmdoc_creatorFullName
WindchillEPM
last name,first nme
epmdoc_qualifiedidentifier
WindchillEPM
B.2
epmdoc_revisionNumber
WindchillEPM
144
epmdoc_authoringApplication
WindchillEPM
Creo
epmdoc_placeHolder
WindchillEPM
FALSE
L Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Lawrence, I know this is an old thread, but this post with the epmdoc variable names and examples was a huge help for me along with your attachments. Just wanted to say Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Patrick Williams | Engineering Systems | c: 616.947.2110
[cid:image001.jpg@01CF2668.6B805320]
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
HI Dimitry,
I know that someone who figured it out. I don't think it is costly customization and I thinkthey are pretty affordable. It called the "Stamper" and PLM Worker from Najanaja.com. It is a great self-configurable architected framework that you can query any application (i.e. Windchill) up and down objects to be placed on the drawings as a watermark. I really like the flexibilty of the framework.
I've used Najanaja in the past and had no issues with their support and amazing work. Some many other big companies have used Najanaja as well. I wouldn't waste my time and money with other companies with false promises that has no experience with standard requirements and windchill proper architecture. If you have a tight budget, timeline and want the best custom solutions,give them a shout. Because we all have tons of experience implementing Windchill, I have no issues passing my requirements to them with instant sync'ing of knowledge of business requirements, architectual soluions and expected results. When you have to start to teachthe consulting company how to properly look into up and down Windchill architecture, then you know you should be looking elsewhere. I don't have that issue with Najanaja.
http://www.najanaja.com/?q=products
Patrick
In Reply to Dmitry Ushamirsky:
I am hoping somebody already figured it out, and it is not a costly customization...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
In most cases of the drawing I've seen at a lot of companies, it's a combination of attributes coming from:
- WTPart (number, name, description, entire BOM table)
- ECNs (ECN #, approvers and dates)
- ECRs (ECR #, approvers, originators, dates)
- Change activities (approvers, document impact matrix, date
- WTDocuments (number, name, description, revision, URL link to content for user guides and manuals)
- EFFECTIVITY attributes in the usage and reference links between object/where used (different values)
- Security Labels (confidential, top-secret, for your eyes only)
- Lifecycle states of the objects mentioned above (WTPart BOMs, ECN's, ECR's, Change Activities, WTDocuments)
- webservices ties to ERP systems with work stoppage, holds and so forth in case production floor has to read the viewable.
You can use both watermark or the PLM worker to modify the drawing itself to generate a 3rd party image (pdf, iges, tiff, etc). I don't understant why PTC hasn't gotten out of this mindset of Pro/INTRALINK with EPMDocuments and ProE. Much bigger world outside ProE.
Good luck,
Patrick
In Reply to Patrick Chin:
HI Dimitry,
I know that someone who figured it out. I don't think it is costly customization and I thinkthey are pretty affordable. It called the "Stamper" and PLM Worker from Najanaja.com. It is a great self-configurable architected framework that you can query any application (i.e. Windchill) up and down objects to be placed on the drawings as a watermark. I really like the flexibilty of the framework.
I've used Najanaja in the past and had no issues with their support and amazing work. Some many other big companies have used Najanaja as well. I wouldn't waste my time and money with other companies with false promises that has no experience with standard requirements and windchill proper architecture. If you have a tight budget, timeline and want the best custom solutions,give them a shout. Because we all have tons of experience implementing Windchill, I have no issues passing my requirements to them with instant sync'ing of knowledge of business requirements, architectual soluions and expected results. When you have to start to teachthe consulting company how to properly look into up and down Windchill architecture, then you know you should be looking elsewhere. I don't have that issue with Najanaja.
http://www.najanaja.com/?q=products
Patrick
In Reply to Dmitry Ushamirsky:I am hoping somebody already figured it out, and it is not a costly customization...
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hello
not sure that is possible today...
Typically when not watermarking on the Workers side, but directly in the client side.
if you open 3D viz from the EPMdoc info page. you will not have WTpart attributes loaded in Creo View
But if you open the 3Dviz from the WTpart info page where the EPMdoc is linked by owner link. WTpart attributes are loaded. So you can watermark it on 3D annotation.
For drawings, even if you link by content link the drawing to the wtpart. And open it from the info WTpart page. WTPart attributes are not loaded in Drawing viz ..... 😞 So impossible to watermark dynamically the drawing with "WTpart Centric" approach.
Basically . totally remove drawing table from drawings and watermark them "on demand" depending of Context or WTpart strtucture configspec ....
Today, we workaround this by implementing our own "print Drawing" action in WTpart info page.
We use the Itext java library to create a composite PDF file containing a summary page with WTpart attributes, and collect all relating drawings + watermark WTPart revision, state, date , reviewers, etc ...
This action is contextual and can be used with different config spec, to be able to print a "Released" PDF content, ora "prototype" content ... based on our LifeCycle states ...
please vote for my idea "enhance Watermarks in Creo View"
http://communities.ptc.com/ideas/1065D
regards
Gregory
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
itis tobothprotect the IP of thedata and also to ensure that that data is
not used incorrectly; for example an engineer needs to know he is looking atan
“inwork”and not a“released” drawing, but another reason is that a drawing
should be marked so it is not easily copied.
if it can be downloaded from the system
using a PDF library to ensure the stored data is marked
a viewer
context data to be added such as “who downloaded it and when”
is always marked correctly for both security and usage reasons,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Gregory.I tried your link & it showed to be deleted &/or didnt work.
Patrick, I cant see going into customizing for watermarks, when I have seen locations that get it to work OOTB. I just cant seem to get it working, because the ptc guides are not to helpful. I also have a ptc call in & they are a day late on their suggested response time. Now if I go somewhere where they want extensive watermarking, I will cant see paying for it, because I have head itext works fine. I think its free, but im not sure.
But I have been at a few locations that have watermarking working, so I imagine it does work somewhere.
I am just trying to get some one that has it working, to look at my files &/or send their files (datajett@aol.com), so I cn put this behind me.
Thanks
Larry Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Larry
you have to be authenticated with a ptc community account
regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Dear Lawrence,
We had the same doubt with iText and so contacted them to clarify, they made it perfectly clear that we need to pay for a license if we included it in any of our code; we therefore chose a different really free libary to use. I am not sure if this was because Windchill is not open source, or we were providing our code to many clients (we offered to make the PDF tools open source but it was not enough)so I would check yourselves with them if you have any doubts; I find the open-source licensing model confusing when we are talking about custom code used in a single organization.
Regards
Simon
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hi Larry,
I think Najanaja.com PDF stamper (watermark) is free to download. But, give them a call. No matter what you still have to create either a custom query or using QueryBuilder (ootb) to transverse object relationships to get values other than the business principle (workflow) or EPMDocument object.
I can't see paying for anything outside these standard business requirements that is common for all companies. It really should be OOTB. But, like all large software companies, its a slow process but hopefully it becomes OOTB. It really depends on how much workarounds and business risk you want to incureversus immediate success of the implementation.
Patrick
In Reply to Lawrence Jett:
Gregory.I tried your link & it showed to be deleted &/or didnt work.
Patrick, I cant see going into customizing for watermarks, when I have seen locations that get it to work OOTB. I just cant seem to get it working, because the ptc guides are not to helpful. I also have a ptc call in & they are a day late on their suggested response time. Now if I go somewhere where they want extensive watermarking, I will cant see paying for it, because I have head itext works fine. I think its free, but im not sure.
But I have been at a few locations that have watermarking working, so I imagine it does work somewhere.
I am just trying to get some one that has it working, to look at my files &/or send their files (datajett@aol.com), so I cn put this behind me.
Thanks
Larry Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I did get the watermark to show up for a HPGL/PLT. I have attached the image.
But our publishing (like most) is set to Publish PDF's. The watermark settings are working, but its a publish format issue.
Unless some one knows the route to get those OOTB settings to work on PDF's, without iText or other customizations.
I am not opposed to doing the iText or other customizations, as long as they are free/cheap & dont take a lot of customization time, because I dont think the client is open to that much time spent on something that should be OOTB for PDF's.
Any ideas?
Larry Jett
datajett@aol.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I thought I posted this comment, but I cant find it now.
Anyway, I finally seen my waternark work. But on a HPGL/PLT. But we publish all our DRW's to PDF.
Any idea why it will work for PLT & not PDF?
I attached an image that shows the watermark on a PLT.
Larry Jett
datajett@aol.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
After 2-3 weeks, I finally got a call back from PTC & they found/knew the way to get the waternarking to show in PDF's
In watermarking, the PDF is considered a Document Page.
So when I assumed I only needed to create a Drawing page with attributes in it, I needed it for Document Page.
The ptc person had me "edit", "copy" the Drawing Page & "edit", "copy to all" from the watermark editor.
Then save that ini file & replace old with new, with same ini file & place back up at site/org, utilities, Visualization
Configuration Administration, & replace the config ini that was initually up there. the same one the server_prefs.xml points to.
Then all was good.
Let me know if any questions, if this didnt make as much sense as when I typed it.
I attached the new one (afs_03.ini, where the other one I attached before, was afs_01.ini). They are different names now, because I added a couple extra attributes. But the new one cleary show (drawing & document, ecad, etc)
Larry Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
New Dilemma,
I guess I recently realized that the DRW's PDF's that are stored in the windchill vault, are likely published through Reader.
Where the watermarks (ootb windchill &/or creo view) arent applied till you open them into Creo View. You can save, print to pdf & email from there & those PDF's will have the watermark.
But that does no good for automating & placing into the windchill vault & associating to the windchill DRW.
So that means that my previous & current code (shown below), wont allow for download/save of a pdf with watermarking.
Code:
URL:
URL url = data.getViewContentURL(holder);
Download:
ContentServerHelper.service.writeContentStream(data, path);
Does anybody have a route to get pdf's automated either into the vault & associated to the DRW or downloaded to a shared drive, with watermarking.
A route thats not costly or heavy programming. I dont mind the programming, but with things like iText, isnt there a licensing fee?
Is it cheap?
Any ideas, methods?
Thanks
Larry Jett
datajett@aol.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
are using it for.i.e some PDM utility, that's when it becomes a commercial
license arrangement.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Great to hear. I will look into iText then. I will have to see if my current client is willing to spend the time & dime on me doing the coding.
Any idea of how long it should take for a normal developer (myself). Thats means double your time, at least...ha..ha
I just spoke with a ptc support person on watermarking & they also mentioned purchasing Adobe LiveCycle (if I spelled that right) & creating a doc worker. Which he said would create pdf's with watermark. Then also associate it to the DRW in windchill, which wouldplace that pdf into the vault through db meta-data.
Same as publishing with pro & thumbnail worker, I think.
But its a purchased item. Anybody know what the livecycle costs?
Thanks
Larry Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Well, I started on the lengthy customized watermarking. I like the najanaja & iText route, but after watermarking the downloaded published pdf, I cant get it up to replace the default representation.
I want it there, so if anyone views, downloads, etc, they get the watermarked pdf.
I used updateContent route:
newAppData = wt.content.ContentServerHelper.service.updateContent( holder, newAppData, (java.io.InputStream) is);
But I could only get it to go up as an SECONDARY attachment. I even accidentally got it to go up as PRIMARY & replace the DRW, but I cant find the code to get it to go up as representation, derivedimage, etc & become the default representation.
What am I missing &/or can I even send the watermarked pdf as a rep?
Thanks
L Jett
datajett@aol.com
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I can think of two potential solutions to handle this. They are as below:
*Potential Solution 1 (CadConverter extension point)*:
- Write a custom CadConverter
- Update method doDrawingConversion() to call your custom stamping utility
(iText?) and generate stamped PDF
- Compile and deploy your custom CadConverter
- Update wvs.properties to use custom CadConverter in place of OOTB
CadConverter. Search for entries such as:
publish.cadconvert.ACAD
publish.cadconvert.PROE
Draft custom CadConverter is attached to this email.
*Note:*
- I have used this solution to implement certain other behavior
- I have not used this solution to implement stamping/watermarking
*Potential Solution 2
(PublishServiceEvent.PUBLISH_COMPLETE/PUBLISH_SUCCESSFUL listener)*:
- Write a custom listener to listen for PUBLISH_COMPLETE event
- Retrieve the representation object
- Retrieve the ApplicationData for PDF file from representation object
- Download PDF file from the representation
- Call your custom stamping utility (iText?) and generate stamped PDF
- Retrieve streamdata from applicationdata
Streamed streamdata = (Streamed) applicationdata.getStreamData().getObject()
- Store new PDF file using
streamdata.storeStream()
*Note:*
- I have used PUBLISH_SUCCESSFUL event to trigger generation of custom
WTDocuments (to store PDF)
- However, I am not sure, if "storeStream()" can be used to replace
existing content. This has to be validated.
--
Rochan Hegde
Productspace Solutions Inc.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Hello & Thanks Rochan,
I am basically using writeContentStream to download:
ContentServerHelper.service.writeContentStream(appdata, theFile.getAbsolutePath() );
I am currently working on my own watermarking through iText. Someone from NajaNaja sent me a link for their watermarking, but I need further iText customizing, because my client needs a date for release state change on pdf.
So I have most of what you spoke of covered.
I currently have code to add the watermarked pdf as an attachment:
newAppData = wt.content.ContentServerHelper.service.updateContent( contentcookie, newAppData, (java.io.InputStream) is);
But the area that you mention you have not verified yet,is why I posted this message.
I cant find the route to create a representation.
I can likely replace the existing default representation, with the new rep, becauseI found that code.
But I just cant find the code to create a representation.
updateContent looks great for adding content, but there doesnt seem to be something as nice or at all, for represenatations.
L Jett
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I assume that, PDF files are generated by publishing EPMDoducmnet
(Drawing). You are then using customization to stamp/watermark PDF file.
Also,
- You have the code to store stamped/watermarked PDF as an attachment
- But, you want to store stamped/watermarked PDF as representation
When a publish job is created in Windchill, CadConvert
(CadConvertPROE, CadConvertACAD etc) calls method "doDrawingConversion" to
trigger generation of PDF output file. Once the PDF is generated, Windchill
calls method "storeDrawingRepresentation" to store files as representation.
So, you need to call your customization after "doDrawingConversion" is
called and before "storeDrawingRepresentation" is called. You just have to
replace CAD worker generated PDF file with stamped/watermarked PDF file.
Windchill automatically picks up the PDF and stores it as representation.
You need not have to call any method related to representation. Check the
pseudo code in my earlier email.
--
Rochan Hegde
Productspace Solutions Inc.
