How to handle a glitch gracefully with client

Any professional designers here, I could use some perspectives on how to handle a situation.
Briefly: first time client, somewhat fussy but well-intentioned and nice to work with. I designed an annual report for them, process color, nice piece. The cover image is a color satellite image from NASA, and on the proof some slight horizontal banding appeared in one area that turned out to be a glitch in the printer's proofing device.
I did some very slight color adjustments on the image and on the second proof some diagonal banding appeared in the same area. After discussing this with the prepress chief, I concluded again that this must be another proofing device issue. I did not see this banding on my monitor, so concluded it wasn't in the file.
At the press check yesterday I was surprised to see the banding. I discussed it with the prepress chief again, he said he had noted it on screen the previous day and "thought that T---- was going to discuss it with you." To my knowledge nobody had contacted me (T---- was off that day).
I have never stopped a print run before and was reluctant to do so now (everything else looked A1). This banding in one area of the image didn't seem catastrophic, just annoying to my fussy designer eye. A lot of people might not even notice it. Apparently, it's part of the original composite digital image NASA created.
So the question is, how do I handle this with my client? When showing them the proof with the banding, I said "don't worry, this won't be on press."
My professional sense is that I offer to correct the cover in Photoshop at no charge and have it reprinted (nothing has been trimmed or bound together yet--I've asked the printer to hold off on that). Do I wait and see if my client even notices? Do I point it out first thing?
And with the printer, do I insist they reprint the cover gratis? Or do I share responsibility?
If I had it to do over again I would've insisted on a perfect proof...I was just trying to keep things moving along and I trust this printer who I've worked with before (they do good work).
Thanks for your perspectives.

Thanks guys. I had a good chat with my printer rep. today, nobody pointed any fingers, they basically said they are willing to do whatever is necessary to make things right, except they indicated that they would charge for any additional prepress time. That seemed fair--I can do the Photoshop work and all they need to do is run a new proof and burn a single plate. I would cover that cost.
Later in the day I met with my client and told them everything went fine except for one glitch--I asked if I could wait until after they'd reviewed the proof to reveal it, just to see if it was obvious. They good-naturedly went along (we have a good rapport) and could not spot the problem. When I pointed it out and explained what happened, I said I would be more than happy to fix it, no charge to them, just a little extra time delay in getting the final product.
The person I work directly with felt it wasn't worth fussing over, but wanted to show it to the boss who wasn't in today. So I'll get a final answer tomorrow (he's the fussy one, so I'd say there's a pretty good chance he'll want a reprint).
I feel it has been handled well by everyone to this point. Good learning experience for me.
Thanks again for your input. Any further advice or comments welcome.

Similar Messages

  • How to handle abstract XML elements with XMLBeans

    Hello,
    I have an xsd that uses abstract elements, and i wanted to ask you how can i create new XML Documents with XMLBeans? My problems is that i don't know how to handle abstaction with XMLBeans.
    Let me show you a very simple example to make you understand my problem :
    Suppose we have the following schema :
    <xsd:schema targetNamespace="http://www.example.org" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.example.org">
         <xsd:element name="Customer" type="CustomerType" />
         <xsd:complexType name="CustomerType" abstract="true" />
         <xsd:complexType name="PremiumCustomerType">
              <xsd:complexContent>
                   <xsd:extension base="CustomerType">
                        <xsd:sequence>
                             <xsd:element name="CreditCard" type="xsd:string" />
                        </xsd:sequence>
                   </xsd:extension>
              </xsd:complexContent>
         </xsd:complexType>
    </xsd:schema>I use XMLBeans to create a jar with java classes according the xsd above. Then, in order to create a new xml document i use the following code :
    CustomerDocument cd = CustomerDocument.Factory.newInstance();
    CustomerType ct = cd.addNewCustomer();
    PremiumCustomerType pct = PremiumCustomerType.Factory.newInstance();
    ct.changeType(pct.schemaType());With this code i get an XML Document like the following :
    <Customer type="PremiumCustomerType" />But after that, i cannot add an element CreditCard into this Customer element. Can anyone help me?

    In Indesign there is no way you can directly work on the XML-IN footnote, since indesign won't support XML tags in footnote stream.
    To achive that you need to have XSLT/Perl/Indesign Scripting.
    This task is achievable, you can create a auto footnote for XML workflow projects.
    1. Create an XSLT to transform the footnote to the respective places
    2. Change all the "<" ">" to some standard names, since indesign won't accept XML tags in the footnote stream.
    3. Import it in indesign and using script convert it to autofootnote.
    Shaji

  • How to handle exception propagation in webservice client?

    Hi ,
    Is there a way to catch an exception thrown by Webservice server handler?
    We have a situation where we need to handle the exception on the client side thrown by the server handler.
    We are using Webspehere webservices created thru RAD 7 and clients are generated using axis 2 code generator tool. We generate WSDL from java class rather than Java from WSDL.
    We have vague idea that we can use wsld fault mechanism but does not have much implementation knowledge on it.
    Any ideas on this will be great help.
    Thanks in advance..

    Here is little more detail ::
    We have our regular webservices which has some business methods. Also we have a custom handler which extends javax.xml.rpc.handler.GenericHandler to handle requests [public boolean handleRequest(MessageContext context){
    return true;
    }] for all our application Webservices.
    So, in case of any application errors, handler throws an excpetion which we expect it to be caught in the client stub. e.g. if our application throws InvalidDataException with a specific message on it, we expect it to be caught in the client code as InvalidDataException with the original message on it.
    Is there a way to achieve this?
    Thanks,

  • HowI get Address Book Server sync with clients?

    I have just set up Lion Server on a macmini and am learning how to set it up.  I cannot get address Book server to sync with client accounts.
    The server is function is active.  The users are properly set up, and the clients have been connected to the server and a Mac OSX Server Address Book created.  I have also set up the address book on the Mac Mini with an OSX Server addresss book.  It should show the same entries as the client and sync wherever changes are made.  Not a sausage....nothing......  The little 'wheel' whizzes round and does......... you have got it........ nothing.
    I thought this was easy to use?
    Any help would be welcome.

    Hi,
    Yes the sync tool is a standalone utility (you don't need the outlook connector installed). I finally got around to installing/configuring the latest version (comm-suite-5 sync tool) against my 2005Q4 test install.
    The addressbook server is the UWC address as I mentioned before but you also need to include the /uwc on the end.
    So for my system I have the following setting:
    local.sso.uwc.verifyurl = http://test-system.sun.com:82/uwc/VerifySSO?
    This maps to a :
    => Address Book Server: test-system.sun.com/uwc
    => Port: 82
    So in your case it would be:
    local.sso.uwc.verifyurl = http://hostname:6788/uwc/VerifySSO?
    => Address Book Server: hostname/uwc
    => Port: 6788
    Regards,
    Shane.

  • How to handle the current row with radio button selection???

    Hi Everyone,
    I have one ADF page with one table and one "Find" button.
    I have created one new attribute with VARCHAR2(1) in the VO and dragged that attribute as first column in the table. And changed that first column to Radio Button to select only one row at a time.
    Upon clicking on the "Find" button i need to get the values of current selected row.
    How can i get the values of selected row?
    What code should i write to get the values of selected row in Method Binding of "Find" button?
    Any suggestions will be really useful.
    Thanks.

    Hello Kumar,
    I have some comments on your case.
    >
    I have created one new attribute with VARCHAR2(1) in the VO
    >
    1- You should create this attribute in the Entity object and then add it to the view object.
    2- Do you need that only one radio button is set at a time for all rows ? If yes then you need to handle the case when the user set more than one row and clear the value of the attribute for all other rows.
    >
    How can i get all the values of current row in backing bean method(method binding of Find method)?
    can u plz provide me the code for that?
    >
    If you mean by the current row is that the row with its value of the selected attribute is set (the radio button is set for that row), then you can write a method in the viewObjectImpl class and expose it to client interface and call it from your bean.
    here is an example based in Department table in HR schema.
    //This method is written in DepartmentsViewImpl   
    public Row getSelectedRadioRow(){
                //create a second row set to not impact the row set used in ADF
                RowSet duplicateRowSet = this.createRowSet("duplicateRowSet");
                //get the current row of the table to set it back after re-executing the VO
                DepartmentsViewRowImpl currentRow = (DepartmentsViewRowImpl)this.getCurrentRow();
                Row[] filteredRows = duplicateRowSet.getFilteredRows("IsSelected", "1");
                DepartmentsViewRowImpl row=null;
                if(filteredRows.length>0){
                    row = (DepartmentsViewRowImpl)filteredRows[0];
                    System.out.println("Department Name " + row.getDepartmentName());              
                this.setCurrentRow(currentRow);
                duplicateRowSet.closeRowSet();
                return row;           
            }

  • How to handle change of relation with SAP

    hi,
    suppose i'm an employee of a SAP customer right now (meaning i have an S-ID), and then later on i'm employed by a different SAP customer, triggering a deactivation of my old S-ID, and the creation of a new S-ID, how would the transition of S-IDs be handled? would i find myself not able to login to my account (since naturally my email address would change too)?
    or is my S-ID stuck with me for life?
    honestly i wouldn't want this to happen (nor do i see this happening), but suppose it did, how would the powers that be handle this?
    ryan.

    hi Denis,
    it depends what kind of data you're trying to delete:)
    during the standard output (IDOC) of some documents
    you can see a deletion indicator (action), there are also
    some document which you can delete on the basis
    of specific conditions - for example when somone
    sets a rejection indicator in a document this might
    mean that the document (or one of it's lines)
    was deleted
    so basically it depends what kind of data you want
    to delete
    Regards,
    michal

  • How to handle ORA-28001 error with JDBC thin driver ?

    Dear reader,
    As you all know, ORACLE returns error ORA-28001 upon a connection attempt when the user's password has expired.
    Handling the error in OCI is quite simple, thanks to the function OCIPasswordChange(). However, I have not been able to find a JAVA equivalent in the Oracle JDBC library.
    I have found a field called oracle.jdbc.driver.OracleDriver.set_new_password_string, and a field oracle.jdbc.OracleConnection.CONNECTION_PROPERTY_SET_NEW_PASSWORD, but I have really no idea on how to use them (if appropriate) so as to allow the user to change his/her password on the fly.
    I greatly appreciate having any advice from anyone who happened to be faced with that problem.
    Best regards.
    Georges BREFORT

    Hi,
    according to Note [124970.1 Example: How to Change an Expired Password in JDBC?|https://metalink2.oracle.com/metalink/plsql/f?p=130:14:2181952130729466734::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,124970.1,1,1,1,helvetica] it's possible with JDBC Thick (OCI) driver only.

  • How to handle multiple requests from single client??

    hi all
    I wrote a client server program to handle requests from client.I have 2 types of requests, one is to submit comments to the server other is to view comments on the server.I have tested the app and it works fine for either of them(independently) but they don't work both together i.e when i submit a comment and view it,it's stuck and when i close the program it gives SocketException :Connection reset.
    on client side:
    My request is just a string
    on the server side:
    I check the string and give the client what it wants.
    I want to know if there's any other way to send requests other than passing it as a string.
    I can post my code if needed.
    thanks,
    Sree

    Here is my client code,minimized it to the extent possible and it might give some compilation problems since i didn't include all the functions needed but i think you should be able to get an idea if i'm doing something wrong.
    Can give you my server code if needed.
    import java.io.BufferedReader;
    import java.io.DataOutputStream;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.net.Socket;
    import java.net.UnknownHostException;
    import javax.swing.JButton;
    public class Test {
         JButton submit_button;
         JButton view_button;
         Socket client;
          JButton get_submit_button() {
                   if (submit_button == null) {
                        submit_button = new JButton();
                        submit_button.setText("Submit");
                        submit_button.addActionListener(new java.awt.event.ActionListener() {
                             public void actionPerformed(java.awt.event.ActionEvent e) {
                                  send_comments_to_server();
                   return submit_button;
               Socket check_client_connection(){
                   String host = "C001192097";     //server host name
                   if(client == null || client.isClosed()){
                    try {
                         client  = new Socket(host, 4321);
                    }catch (UnknownHostException exception){
                         System.err.println(host + ": unknown host.");
                    catch (IOException exception){
                         System.err.println("I/O error with " + host);
                   return client;
              void send_comments_to_server(){
                    try
                         Socket client = check_client_connection();
                         DataOutputStream output_stream = new DataOutputStream(client.getOutputStream());
                         BufferedReader stream_input = new BufferedReader(new InputStreamReader(client.getInputStream()));
                         String comment_report = "comments";
                         Comments comment = new Comments();
                         User_Data user_data = new User_Data(); //function that returns client details such as host name and stuff
                         String user_info = "User Name: "+user_data.user_name+" "+"Host Name: "+user_data.host_name+" "+"Domain Name: "+ user_data.domain_name;
                         comment.user_info = user_info;
                         comment.summary = comment_report;
                         comment.comments = "passing comments";
                         String report = user_info+" "+comment_report+" ";
                         output_stream.writeBytes(report+"\n");
    //                     output_stream.close();
    //                     stream_input.close();
    //                     client.close();
                    }catch(IOException e){
                         e.printStackTrace();
              void receive_comments_from_server(){
                   String line;
                   StringBuffer comments = new StringBuffer();
                   try
                         Socket client = check_client_connection();
                         DataOutputStream output_stream = new DataOutputStream(client.getOutputStream());
                         BufferedReader stream_input = new BufferedReader(new InputStreamReader(client.getInputStream()));
                         String msg = "view comments";
                         output_stream.writeBytes(msg);
                         System.out.println("waiting for response");
                             while((line = stream_input.readLine()) != null){
                                  comments.append(line);
                              System.out.println("Comments from server "+comments);     
                        } catch (IOException e) {
                             e.printStackTrace();
              JButton get_view_button() {
                   if (view_button == null) {
                        view_button = new JButton();
                        view_button.setText("View Comments");
                        view_button.addActionListener(new java.awt.event.ActionListener() {
                             public void actionPerformed(java.awt.event.ActionEvent e) {
                                  System.out.println("request sent");
                                  receive_comments_from_server();
                   return view_button;
    }thanks
    Sree

  • How to handle multiple inbound interfaces with WSDL messages

    Hi All,
    We have a synchronous: Abap Proxy -> XI -> WebService Scenario. The webservice has multiple SoapActions e.g. SearchForProduct_WithX, SearchForProduct_WithY each with different message types. We have tried to use the receiver determination to send the request to the correct soapaction using conditions e.g. if field X in the request is populated use SearchForProduct_WithX action/message.
    But when we run it through the proxy we get this error:
      <CODE>IF_DETERMINATION.TOO_MANY_IIFS_CASE_BE</CODE>
      <ERRORTEXT>Multiple inbound interfaces not supported for synchronous calls</ERRORTEXT>
    Does anybody know how we can get around this or how best to deal with the multiple soap actions per wsdl situation.

    Hi Yaghya,
    We have used conditions in the Interface Determination. Interestingly if we use an HTTP sender adapter we can use this configuration ... but once we try and use ABAP proxies we get the previous error.
    Another related question ... when we use the http adapter we get a connection time out exception. Same thing happens if we try and use the wsdl tester at /wsnavigator but we can open the wsdl through the browser. Any idea on this one?
    Thanks for all your help.

  • How to handle a Customer Plants with same Physical Address

    We have customers that have multiple plants in the same physical address.  I need to be able to ship to the physical address but in va03 I also need to tell which lines are for which plant. So my question is how is best to handle this?
    Here are the options I can think of.
    1) Each customer plant will be its own ship to even though they would be the same physical address and contact information.
    2) Create a Partner that will hold each plant that will be attached to the ship to.  This would work similar to Manufacture and Manufacture Plant in Purchasing.  Then this customer plant partner would be attached to the sales order line in addition to ship to.
    3) Use Option 2 but figure out what SAP standard partner for customer plant is.
    Does anybody have better ideas?
    Which one is the most appropriate to do?
    Matthew

    Hi
    You can map them as different Unloading points and enter the details in the Customer master unloading points details. When the slaes order is created, a pop screen will show you the different unloading points to chose one among them. This should solve your issue.
    Thanks,
    Ravi

  • How to handle multiple image montage with color corrections

    I am using Photoshop CS5 and am creating a photo montage poster with about 30 images on it.  The photos are not stellar and I need to change levels, exposure, saturation etc to each image.  I was creating groups from layers for each image then dropping it onto the montage file, but I see that filters effect every layer below.  I have a gradient layer as my background and I don't want it affected nor do I want every layer below affected.  I created smart layers from each image, that works, but it really slows the system down.  What is the smartest and most efficient way to handle this?
    Thanks,
    Lisa

    use the clipping mask
    so you make the adjustment layer, then click layer > create clipping mask
    this essentially ties that adjustment to the layer below

  • How-to handle dynamically created AppModules with JUApplication, JUMetaobjectManager

    Hi,
    I've got a JClient App, where I want to dynamically create AppModules in the Context of the RootAppModule.
    How can I best do this??? The problem is that I can't really use the JUMetaObjectManager.createApplicationObject method and hence I can't use PanelBindings.....well I can't use the JClient Framework.
    Is there a way to elegantly manage this issue??
    Every solution would be very appreciated! thanks.

    Hi, first off, no need to determine what has been checked or not. If the checkbox is checked, on the post, the value will be submitted as part of the request. If the checkbox is not checked, it will not be submitted (it's value will be null). Depending on what you need, I have approached this a number of different ways. One way is to name all checkboxes the same name. If you need to distinguish between two rows in the form, then in the value field for the checkbox, use some type of distinguishing factor, for example,
    <input type=checkbox name=chkName value="1:abc">
    <input type=checkbox name=chkName value="1:def">
    Now, you only have to make one call on the Servlet/JSP receiving the form post, request.getParameterValues("chkName") which will return an array of the non-null Strings that were checked.

  • How to handle refreshing TEST schema with PRODUCTION schema ?

    - we have database 10g ( standard edition), database name : ABC
    - Schema name: ABC.PRODUCTION (which is our production schema)
    - Schema name: ABC.TEST (which is our testing schema, where developers work)
    Both the production & Test schemas exist in the same database.
    Now once a week I wanted to refresh TEST schema with PRODUCTION data
    Here is what I have been doing all these years:
    => Take a logical backup (EXPDP) of PRODUCTION schema (prod.dmp)
    => Drop user TEST cascade ( i don't need a backup of this TEST schema)
    => Create user TEST
    => Import PROD.DMP data into TEST schema
    All the above 4 steps are being done manually.
    Questions:
    ======
    1. Is there any easier way of doing the above steps using some tool ?
    2. Does Oracle enterprise manager which comes free with database installation (http://localhost:118/em)
    has any utility or tool to do this job ?
    3. I want everything to be refreshed (all database objects including data) ?
    Thanks
    John P
    Edited by: johnpau2013 on Feb 23, 2011 4:32 AM

    This is crazy. One inadvertent typo and you'll overwrite your Production schema. Plus, what happens if a developer 'tests' against the test schema and slows the Production database to a crawl.
    I presume you know all about this, though and can't make the case to management. I hope it's not a business-critical Production database!
    Anyway, your method is decent. I would advise against doing it automatically, to be honest, especially when your system is so precariously set up. But if you exist, you could use encapsulate all the steps into a script and use crontab to automate the process. I, personally, wouldn't use DBMS_SCHEDULER as you have to be careful with priorities and workload sometimes (at least in my experience) and you might end up having your export/import clash with other jobs in the system if you don't pay attention.
    Here are the steps I would use:
    Create a 'create user' script for the test schema based on dynamic SQL. That way you can be sure you have all the grants necessary for the user, in case things change.
    Drop the test user (use EXTRA caution and be defensive when coding this part!)
    Export the schema using FLASHBACK_SCN to ensure you have a consistent export
    Run your 'create user' script to create the test user
    Import the schema with a REMAP_SCHEMA option (use EXTREME caution with this!!!!)
    Compile invalid objects
    Compare objects and exclude any recycle_bin objects. Send an email alert if the object counts are different.
    Compare invalid objects. Any objects which aren't invalid in Production should be flagged up if they're invalid in test.
    Again, it's absolute insanity to have a test schema in a Production database. You absolutely must insist on addressing that with management.
    Mark

  • Collaborating With Clients | Adobe Evangelists - Karl Soule | Adobe TV

    In this Adobe Premiere Pro CS4 Tutorial, Jason Levine gives an in-depth look at how you can quickly efficiently collaborate with clients and team members with Clip Notes in Premiere Pro.
    http://adobe.ly/w4PnA6

    Love this functionality!
    Can't find it in CS6.
    Please help me be a better client communicator.
    How do we enable this option?
    Thanks,
    Kyle

  • How to handle different languages in Illustrator for big clients?

    Hi Guys,
    I need small suggestio for 'How to handle different languages in illustrator for big clients'. For instance; Arabic, this is a language which  needs to be read from right to left instead of left to right. There are  other strange languages as well (Cyrillic, Chinese etc.). It happens  also that when you copy strange languages from a word file it will not  be easy to paste it the correct way in a .ai file. Besides that, it’s  also difficult to do a language check when we are not able to read it!. So,  to make a long story short, I want to figure out how we can deal with multiple language  circles?
    Can you some please give me the solution for this...
    Thanks in advance...
    HARI

    I take it you might come from an arabic background.
    Here is how you can help yourself to some degree.
    Google has a translation feature and service which is at the moment free. It is excellent.
    Secondly if you are working with ME languages you really need the ME version of Illustrator or any other Creative Suites Application in order for it to work properly.
    It, is also best to enable the language and the input for that language for your system on the Mac it is easy you go to the Language and text feature in theSystem Preferences, once enabled you can select the fro the menu bar under the American flag if you are in the US. Thst will appear once you have more than one language selected.
    You select the language input you need and then a font for that language then paste and edit.
    You need fonts on your computer that are of those languages as well.
    How to manage this as a work flow well that is something you will have to work on yourself or hire a consultant who specializes in this area.
    We had a few visit here when they have come across a snafu. So they exists.

Maybe you are looking for