Hyperlink on current field value sent to pdf

I have a Crystal 8.5 report that I have sent out to pdf.  I am reading it in Reader 9.4.3.  I created a hyperlink that when clicking on some text (drive and path to an image file), it will show up as
c:\folder\image.bmp
in the tooltip.  When I click on it, it brings up a security warning and allows me to click on Allow or Block.  The path now says
c:%5Cfolder%5Cimage.bmp
When I click on Allow, nothing happens.  To get backslashes to show up in the tooltip in Reader, I had to set up the path in the database like this
c:\\\folder\\\image.bmp
When I click on the link in Crystal, it opens the image in the MS Viewer.
The user would like to be able to export the report to pdf that can be then viewed and if the end user wants to click on the link to see the image, they should be allowed to.  Not all users have access to Crystal.
Any help is appreciated, TIA rasinc

Thanks for your attempts sharonamt.  When I exported to RTF, the link in the tooltip came up as:
file:///C:\Users\WindowsLoginName\Desktop\.bmp
and it tells me to Ctrl+Click to follow the link.
I believe it is referencing the desktop because that is where I sent the rtf but the text itself is the correct text displayed to the path of the file.  When I moved the rtf to my server and opened it from there in Word 2007, the tooltip said
file:///C:\.bmp
When I opened the rtf from the server on my notebook running XP and Office 2000, it was the same.
I then set it up to email out as a pdf and rtf (conversions done in the program that generates the report).  In pdf format it still shows the original message I got with %5C instead of \ and in rtf format it references the UNC path to my server where the file is located but it removes the \ from the normal path so it shows as file:///
ServerName\ResourceName\folderimage.bmp missing the \ between folder and image.bmp.
I've currently got the reference to the real path with two backslashes because when I have it with only one \ it seems to be removed.  It seems backslashes are some internal command for something because even when I type in two of them here, it forces a line break.
So I am completely stumped now.

Similar Messages

  • Printing field values to a PDF using a template

    Hi
    I have a set of field values stored in variables, I need to print these fields into a
    PDF file. There is a template for this PDF , and each field value should go to a
    specific location wrt the template on the new PDF. Could you any one
    recommend a 3rd party API that can be used to do this purpose.

    I used iText (http://www.lowagie.com/iText/) to do
    this.
    I created the template as a PDF and used AcroForms to
    create named fields within specific formatting within
    the PDF.
    // Create a BAOS into which to write the
    PDF.
    ByteArrayOutputStream baos = new
    ByteArrayOutputStream();
    // Load the PDF template and open the form fields.
    InputStream inputStream = new FileInputStream(
    "template.pdf" );
    PdfReader reader = new PdfReader(  inputStream
    PdfStamper stamp = new PdfStamper(reader,
    baos);
    AcroFields form = stamp.getAcroFields();
    o set the text in a field:
         form.setField("field_name", "field value");
         // close the PDF and return the bytestream
         stamp.close();
         return baos;
    It looks like that you are loading a PDF template from a file, and straight
    away attempting to fill the form by using the name of the field. To do this shouldn�t the
    template PDF be formatted in a specific way to access the specific
    location of the template where the field is.
    Can you tell me if the template PDF file should be formatted in a specific way
    to do this using iText. I was thinking of calculating the offsets of each field
    and just print the data at that location.
    And I very much appreciate your help so far.

  • How to Supply the form field values to a pdf form when loading it

    I am working on a web site project using Asp.net where the user has to fill in a PDF eform in acrobat reader. Then when he clicks on submit it returns to my asp.net app and the PDF form supplies the values back to my asp.net app. So my asp.net app has the values that were filled in the PDF form and can save those values and work with them...
    OK.
    What I need to know is when I am in my asp.net app, and the user wants to go back and reopen the same form, from my asp.net app..... then how do I pass back the values that were saved back to the PDF form??
    I know if I had a way to pass the values to the PDF form in some way then in the Doc.open or doc.load event of the form I could easily write a little javascript to plug in the values in the PDF form fields.
    but how do I pass those values from my asp.net app to my PDF form???
    thanks

    Thanks bcweed for all the info. I fixed my problem, it had something to do with LiveCycle Designer. If I just use Acrobat to add the form fields, then the FDF works fine. As to your situation with the SavToBuf, that happens to be the method that I am using, so I will just post my code here, and maybe you can pick out what is different from yours. The Response.BinaryWrite(FDFin.FDFSaveToBuf)is at the bottom.
    Sql = "SELECT * FROM Invoices" & WHERE
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open Db_Conn_Str
    Set Rs = Server.CreateObject("ADODB.Recordset")
    Rs.Open Sql, Conn, adOpenStatic, adLockReadOnly, adCmdText
    If Not Rs.EOF Then
    End If
    Set FdfAcX = Server.CreateObject("FdfApp.FdfApp")
    Set outputFDF = FdfAcX.FDFCreate
    'VendorID = VendorName = VendorNum = InvoiceDate = PreparedBy = ""
    Gross = 0
    For I=0 To Rs.RecordCount-1
    If InStr(VendorID,Rs.Fields("VendorID")) = 0 Then
    VendorID = VendorID & Rs.Fields("VendorID") & ", "
    End If
    If InStr(VendorName,Rs.Fields("VendorName")) = 0 Then
    VendorName = VendorName & Rs.Fields("VendorName") & ", "
    End If
    If InStr(InvoiceNum,Rs.Fields("InvoiceNumber")) = 0 Then
    InvoiceNum = InvoiceNum & Rs.Fields("InvoiceNumber") & ", "
    End If
    If InStr(InvoiceDate,Rs.Fields("InvoiceDate")) = 0 Then
    InvoiceDate = InvoiceDate & Rs.Fields("InvoiceDate") & ", "
    End If
    If InStr(PreparedBy,Rs.Fields("PreparedBy")) = 0 Then
    PreparedBy = PreparedBy & Rs.Fields("PreparedBy") & ", "
    End If
    Rs.MoveNext
    Next
    Rs.MoveFirst
    outputFDF.FDFSetValue "VendorID",VendorID,False
    outputFDF.FDFSetValue "VendorName",VendorName,False
    outputFDF.FDFSetValue "InvoiceNum",InvoiceNum,False
    outputFDF.FDFSetValue "InvoiceDate",InvoiceDate,False
    outputFDF.FDFSetValue "PreparedBy",PreparedBy,False
    For I=0 To Rs.RecordCount-1
    outputFDF.FDFSetValue ("Line."&I), Rs.Fields("Amount")&"", False
    outputFDF.FDFSetValue ("Company."&I), Rs.Fields("Company")&"", False
    outputFDF.FDFSetValue ("GL."&I), Rs.Fields("GL")&"", False
    outputFDF.FDFSetValue ("CC."&I), Rs.Fields("CostCenter")&"", False
    outputFDF.FDFSetValue ("DocNum."&I), Rs.Fields("DocNumber")&"", False
    Gross = CCur(Gross) + CCur(Rs.Fields("Amount"))
    Rs.MoveNext
    Next
    outputFDF.FDFSetValue "Gross", Gross, False
    Rs.Close
    Set Rs = Nothing
    Sql = "UPDATE Invoices SET DatePrinted = '" & Now() & "'" & WHERE
    Conn.Execute Sql
    Conn.Close
    Set Conn = Nothing
    outputFDF.FDFSetValue "PrintDate", Date(), False
    outputFDF.FDFSetFile "http://admin/invoices/pdf/InvoiceAuthorization.pdf"
    Response.ContentType = "application/vnd.fdf"
    Response.BinaryWrite outputFDF.FDFSaveToBuf
    outputFDF.FDFClose
    %>

  • How to check a checkbox field value in fw9 PDF form

    Hi,
    I got a PDF given form IRS (http://www.irs.gov/pub/irs-pdf/fw9.pdf). While creating a widget to this pdf form to sign it, I merged the custum data to those PDF form fields using API setMergeFields.
    All the data fields are merged fine except the checkboxes. I tried by passing the values to the merge_fields array as 'On', '1', 'checked', 'checkbox(checked)' but no luck
    What is wrong here in checking the chexbox field in this fw9 PDF or How to check a checkbox field in a form?
    Thank you,

    Hi Simon,
    I re-added and edited the fields of fw9 form by pdf printer. While doing so, I made fields as ready only so that, the data cannot be edited in the form through the widget but will be merged the data to fields only be the code. Wherein Im using the widget only for signature but not for form filling.
    Here, Im able to merge my custom data to all fields while creating widget but not to the fields of checkboxes. The checkboxes fields which are made ready-only are not allowing me to merge the value as checked by the API.
    Please help me,
    Thanks you,

  • Folder level script? How can I use field value as a pdf filename in save as dialog box

    I read somewhere that if you use a folder level script, you can do things like save a pdf with a specific filename - possibly based on a field name.
    How would one set up a folder level script?
    How do you execute a script from the PDF?
    What code would you use to change the PDF name to the contents of the fFieldName text field?
    Or, is this really just impossible to do?

    The article is interesting.  It suggests you place code like this:
    // Page Replacement Function
    var ReplaceLastPage = app.trustedFunction( function(cPath) {
    app.beginPriv();
    this.replacePages(this.numPages-1, cPath); app.endPriv();
    In the trusted folder.  What is the path of the trusted function(s) that get automatically loaded into Acrobat?
    I assume in the example above, function(cPath) is a function inside of the PDF...

  • How can I use field value as a pdf filename in save as dialog box

    Hello,
    I want to use a submit/save button and once you press that the document is automatically named like a field in that document,
    e.g. their is a date field in PDF, When I click Save button in PDF  Then the file name in Save As window is automically entered. Like "09/08/2012.pdf"
    I'm using Adobe Acrobat X Pro.
    Thanks a lot for all your help,
    I really appreciate it.

    Hello Ebnul.nao
    I am having this same problemwith trying to work this out.
    Did you succeed in the end?
    I will really appreciate your help if you did
    Kind regards

  • Can I create a Master PDF that pulls field values from multiple PDFs?

    I am designing a tracking system for a class and want to have the student fill out a basic information form that tracks personal information and individual test grades.  As an administrator, I want to have a master list that can track the entire class and pull in their grades, calculate class average, and order them accordingly.  Ideally, it would pull from a folder of these student PDFs.
    Does Adobe have a way to do this?  I have LiveCycle and Acrobat Pro.

    Thanks for the very prompt answer!  That seems like it sort of does what I want - however, once I leave the course, I want to have the system continue to work - and future Admins probably wont have access to Acrobat Pro, or the technical knowledge to send out looking for responses.  Nor is there a sharepoint (or equivalent drive) to set.  Perhaps some further explanation is required.
    There are multiple classes going on at one time, and each class gets a folder on a standalone machine, with a different Admin in charge of each class.  When one graduates, another one fills in behind them a week or so afterwards.  So what I need is a "template" file for student data, and a template "Master list" that pulls from all of the student data PDFs in that folder, locally, without the Master list having to send out requests for information.  That way, when a new class starts, the students can email in their student data, the Admin can pop them all in a folder with a blank Master List template, and when the admin opens the Master list, it populates with all the data from the student sheets.
    Hopefully that is a little clearer, and hopefully doable!  It really needs to be pretty darn simple.  We used to do it in Excel, and gave each student a tab where we copy/pasted their basic data - and a crosslinked sheet pulled it into the master list.  Alas, that looked unprofessional and sometimes was very troublesome when the students altered the Excel form in any way or put things in the wrong cells.
    Thanks!

  • How can I add form field value to the file name in save as dialog box

    I do not want the form to be saved automatically, just want the form to auto populate the "file name" only.
    A little background on the forms I want to use:  My company has 70 retail outlets, I'll use one of our pdf forms called an "Incident Report" as an example.  I would like for a store manager to be able to complete the form, then email the form to the main office (I already have javascript to add field values and form name to the email subject line), once the main office receives it, I want for them to be able to file the pdf electronically on our server.  We have mutliple forms that we use so I do not want any of the forms to automatically save anywhere, (at this time anyway) I just want the office personnel to be able to click "save as" (or whatever they will need to click) and the form automatically add certain field values from the pdf they have received, of which will be different each time the form is sent to the office (Date, store #, employee name etc.) in addition to the name of the form in the "File name" of the "Save As" dialog box.  The main office employees will decide into which server file the pdf should be saved.
    I'm using Acrobat 8 professional, the stores and office personnel use Adobe reader.
    One little note:  We currently print and file a lot of paper on a daily bases, as soon as I can get this to work, we are going green.
    Me and a lot of trees in this will really apprecitate any help you can give with this!  :-)

    You might want to take a look at the document "Developing Acrobat Applications Using JavaScript" (js_developer_guide.pdf) which is part of the Adobe Acrobat SDK, which can be downloaded here. Read the "Privileged versus non-privileged context" (p. 45ff.). You will find an example for "Executing privileged methods in a non-privileged context". Should be almost exactly what you are looking for.
    Small Outline: For security reasons ("the user always has to know what's going on") you are not allowed to use the "Doc.saveAs"-method without the user permission (--> in a non-privileged context). In order to reach the goal of a privileged context you can use a trusted function. You do this by creating a JavaScript file (*.js) in either the Application-JavaScript-Folder (default location on Windows systems: "%ProgramFiles%\Adobe\Acrobat 10.0\Acrobat\Javascripts") or the User-JavaScript-Folder (default location on Windows systems: "%AppData%\Adobe\Acrobat\10.0\JavaScripts"). Add the following content to the new file:
    myTrustedBrowseForDoc = app.trustedFunction( function ( oArgs ) {
         app.beginPriv();
              var myTrustedRetn = app.browseForDoc( oArgs );
         app.endPriv();
         return myTrustedRetn;
    myTrustedSaveAs = app.trustedFunction( function ( doc, oArgs ) {
         app.beginPriv();
              var myTrustedRetn = doc.saveAs( oArgs );
         app.endPriv();
         return myTrustedRetn;
    The developer guide actually wants you to add this content to the existing "config.js" file. I recommend creating a new file, since its easier to deploy in a network. Either way, every client/user who needs to be able to save documents this way, needs this JavaScript Code in his Application/User-JavaScript-Folder.
    Within the Acrobat Document, which you want to obtain a certain file name, you can now use the trusted functions "myTrustedBrowseForDoc" and "myTrustedSaveAs" to store the file. To call the trusted functions and deliver the file name you can either you use a form field (button) or you add a new menu item. Add the following JavaScript Action to the button/menu item and change "Roller Coaster" to the name of the field which contains the value which you want to become the new file name:
    var fileName = this.getField("Roller Coaster").valueAsString;
    try {
         var oRetn = myTrustedBrowseForDoc({bSave: true, cFilenameInit: fileName + ".pdf"});
         try {
              myTrustedSaveAs(this, { cPath: oRetn.cPath, cFS:oRetn.cFS });
         catch(e) {
              console.println("Save not allowed, perhaps readonly.");
    catch(e) {
    console.println("User cancelled Save As dialog box");
    Good Luck!

  • Adobe Acrobat as a server to create PDF using PDF templates and field values

    I'm writing a web page to create a PDF using fields that we ask for them in the screen.
    My idea is:
    1. Ask for field values (text values and a photo) in my web
    2. Run Adobe Acrobat to load a PDF template (PDF form) and mix with the field values
    3. Create a final PDF mixing values and template
    4. Show to document to the user in his client web browser. I guess the only way to do that is to create the PDF on a server with Adobe Acrobat Pro and send to the user browser a JPEG that will represent the  PDF: If I do this operation in the PDF visor at the client browser, the problem is that it will will be mandatory to install Adobe Acrobat in each cliente because only this visor can manage javascript.
    Can you tell me if this idea is correct? It is possible to use Adobe Acrobat on a Server to create PDF when some proccess needs?

    and what other Adobe product o procedure can we use to do that?
    I only need to create a PDF mixing PDF Templete, field values and javascript.
    Thanks for your help.

  • Dynamic PDF field value doesn't display XFDF value when no keyboard focus

    I created a simple PDF (test.pdf) file (one text field), and saved it as a "static PDF". I created a XFDF file, and when I double-click on the XFDF file, the sample PDF opens and the field is populated.
    Here's the problem: I save test.pdf as a "dynamic pdf" file. I double-click on the xfdf file and the pdf opens up, but the data is not displayed in the field. If you click on the field, the text appears. If you click out of the field, it disappears. If you update the field value, and navigate away, the value stays.
    There is nothing but the field on the page, no scripts, no subforms, nothing.
    Is this a bug in Adobe Reader 7.0? or is there some weird setting in Live Cycle Designer that I'm missing?
    Thanks

    What is your xfdf file look like? Something like:<br /><br /><?xml version="1.0" encoding="UTF-8"?><br />     <xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve"><br />          <f href="file:///C|/test3.pdf" /><br />     <fields><br />          <field name="firstName"><br />               <value>William</value><br />          </field><br />          <field name="lastName"><br />               <value>White</value><br />          </field><br />     </fields><br /></xfdf>

  • How to Filter Lookup Field Values by Current User in Caml Query

    sharadpatil

    Hi,
    If you want to use JavaScript, we can use SPServices to achieve it.
    /* Get Current username */
    var userName = $().SPServices.SPGetCurrentUser({ fieldName: "Title" });
    /* Get Sites assigned to current user */
    var query = "<Query><Where><contains><FieldRef Name='UserName' /><Value Type='User'>" +
    userName + "</Value></contains></Where></Query>";
    More information is here:
    SharePoint – Filter Lookup Field Values by Current User
    http://ljayaprakash.wordpress.com/2012/06/01/filter-lookup-field-values-by-current-user/
    Best Regards
    Dennis Guo
    TechNet Community Support

  • Update value of current field by firing key-f3 is not working

    oracle 8i
    hey,
    I implemented a key-f3 trigger wich should insert the sysdate into the current field.
    :ab.von := sysdate;
    this works perfectly. but when I want to write a standart trigger, wich I could copy in every formfield like the example, it doesnt work and the message frm 41803 is shown, "no prefius datarecord aviable, from wich could be copied
    declare new_date date;
    begin
    if Get_Item_Property(:system.cursor_item, DATATYPE)='DATE' then
    Copy( to_date(sysdate,'DD.MM.JJ'), :System.Cursor_Item);
    end if;
    end;
    could anyone tell me where I have my mistake or if there is a easier way to solve the problem
    mfg
    robert

    ok, it works
    what I dont understand is, what for is then the trigger key-f3, when is it firing? and what is the use?
    how could I make a trigger to use for example strg+d to insert the sysdate or any other key
    where do I find the programm oracle terminal?
    what F-? keys are not used witch I could use?
    thanks anyway, my function is working with your information
    mfg
    robert

  • [LiveCycle Designer] Send Field Value with FDF Response

    Hiya. I'm trying to send two FDF responses, a status message and a field/pair value, from a PHP script that has processed a HTTP POST. The status message is sent to the form successfully, but the field value is not sent to a form created in LiveCycle Designer (ES4 Version 11). Here's what I have:
    <?php
    header('Content-type: application/vnd.fdf');
    // read and store the data however you want
    // reply with some FDF data
    echo <<<RESPONSE
    %FDF-1.2
    1 0 obj
    << /FDF <<
    /Status (Wham bam! Journal data sent electronically. Save a copy of this PDF for your records.)
    /Fields [ <</T(batchnum)/V(testt)>> ]
    >>
    >>
    endobj
    trailer
    << /Root 1 0 R >>
    %%EOF
    RESPONSE;
    ?>
    <?php
    I think I have tried the gamut, removed "!", "copy", "for" from the status message; adding quotes, single and double, as well as ``; spacing; changing and verifying field names; send only the /Status and sending only /Fields (btw no errors while is still not sent); and on. Additionally, the above PHP code works perfectly, sending both status and fields, on a form created in Acrobat Pro XI. But no success in LiveCycle where I need the form created to dynamically manage rows and such. Ideas? Anyone?

    It looks like the FDF you've written was designed for an AcroForm. You can still use a FDF on a XFA form, but it has to be done a bit differently. Use JavaScipt inside the FDF to set your fields. E.g.:
    %FDF-1.2
    1 0 obj
    <<
    /FDF
    <<
    /JavaScript << /After (FieldIWantTomodify.rawValue = ("My new value");) >>
    >>
    >>
    endobj
    trailer
    <<
    /Root 1 0 R
    >>
    %%EOF

  • Form Field Value

    Hi,
    Currently we have a huge folder with allot of pdf files in it and we are running an index service on it. The index service is used on a couple of web sites that searches inside the documents for key words. It works fine with pdf's,word etc. We recently received pdf files from an external source and the index service can't read any of its contents. In the pdf, personal information is stored i. e. telephone numbers, identity numbers etc. We need to search these pdf files to retrieve them to the user.
    I then tried converter program, I'm using C# and Java as language, but they say that I need to upgrade adobe. I also tried dll,jar i.e. itext etc to try and retrieve the values from the files but they all give me a message that I need to upgrade adobe. So, the next thing is that I downloaded a trail edition i.e. adobe 9 extended. It is still giving me the same message. Even if you open the file and try to search for data i.e. 1234 - adobe says that it can't find it but it is there in a field. If you search 1 2 3 4 then it finds it but the pdf needs to be open to search like that.
    Could someone please help me as we have a hundreds of these files which we can't search within. The last resort would be to open them one by one and save the filename in a database to connect to the user and that can take forever.
    Regards
    Juan

    It turned out that saving the form caused some other problems as the form is validated and saved. I really just want to act on the current form values, not save them. I came up with a solution that will give access to the newly edited value:
    setTimeout(
    function() {
            alert(Xrm.Page.getAttribute(
    'dit_accountnotemultirow').getValue());
        }, 1);
    The timeout will let focus move to the button before reading the value of the recently edited field.

  • Modify form field value

    I have the PDF form with several fields. I want to set the value of one field depending on selection made by the user in other field. I am trying to use if statement but it does not work for me. I have copied below the script I am trying to use.
    form1.#pageSet[0].Page1.Table.Table3[0].Row1.Cell1::change - (JavaScript, client)
    if (oField.rawValue == "Service Alert")
       this.resolveNode("Cell4").rawValue = "A";
    else if (oField.rawValue == "Service Bulletin")
       this.resolveNode("Cell4").rawValue = "B";
    When user selects Service Alert in Cell1 I want the value of Cell4 to be set to A and if Service Bulletin is selected I want the value of Cell4 to be set to B.
    Can someone help me with the script. I have done a bit of searching and tested verious syntax but nothing did work. I hope someone will help me to have it working.
    Regards,
    Tony

    Thank you very much for your help, but it did not work for me. I have decided to reply and to send you the form. Could you please have a look on what I have done and try to fix it. I want to add action to Cell1 to modify Cell4 in row 1 of the form, top on the blue background.
    Regards,
    Tony Pluta
    Engineering Technical Coordinator / Graphics Designer, Engineering
    Rail
    Description: C:\Users\tony.pluta\AppData\Roaming\Microsoft\Signatures\UGLLimited.gif
    16 Broadmeadow Rd | Broadmeadow NSW 2292 | Australia
    Direct: +61 2 9492 1277  | Mobile: +61 403 399 167
    Fax: +61 2 9462 1383
    Email: [email protected]
    Web: www.ugllimited.com<http://www.ugllimited.com/>
    Please consider our environment footprint before printing this e-mail
    From: kvdvijaykumar [email protected]
    Sent: Wednesday, 29 May 2013 4:14 PM
    To: Tony Pluta
    Subject: modify form field value
    Re: modify form field value
    created by kvdvijaykumar<http://forums.adobe.com/people/kvdvijaykumar> in LiveCycle Designer - View the full discussion<http://forums.adobe.com/message/5360639#5360639

Maybe you are looking for

  • Read Only form after Submit to Email

    I have a form i'm working on. Basically its a form I like for users to fill out and then click submit once they are done to send it in an email. The script i found below does what I want but with further testing i found out it's not exactly what I wa

  • Backing up my hard drive

    I've been told I can back up my hard drive on multiple DVDs using Disk Utility. I tried making a disk image, but I get an error that there is no room on the hard drive. I tried making a burn folder, but I get an error saying "the disc could not be us

  • How to register listeners on new RAC install?

    Hi there, I've just finished installing clusterware and database 10g on a solaris cluster (10.2.0.2). But, when I query the state of the nodeapps, it says that the listener isn't configured. $ srvctl status nodeapps -n servername VIP is running on no

  • XML gateway program loading Junk characters

    Hi, Its. EBS R12.1.3 We have one interface XML gateway from through which it loads data into apps standard table. It's loading junk characters as tabs, spaces. Source Characterset is default characterset we8mswin1252 & target characterset is UTF8 Ple

  • How to interrupt SSLServerSocket.accept()???

    Hi all, I have created a simple SSL Server socket, and I called 'accept()' in a separate thread, however, this method cannot be interrupted with Thread.interrupt(). It just blocks and stays that way. For non-SSL sockets, I know I can use channels, bu