Send / receive negative values over OPC with DSC -- Device failure

I try to send a negtive value (e.g. -1) but the Tag Monitor shows "Device failure". A positve value works fine (Quality: Good)!
When accessed the variable the directly with a DataSocket connection there is no problem with negative values.
Is it possible to declare the datatype of each variable in the Tag Cofiguration Editor? Haven´t found yet ..!

I guess the problem is Firmware of HP/Agilent 8753 Network Analyzer. Look to Agilents' VXIPnP driver:
http://adn.tm.agilent.com/index.cgi?CONTENT_ID=718&SESSION_ID=901-1096437589-5655233
The function is ag875x_title(ViSession vi,
ViString title,
ViString titleRequest,
ViInt16 titleChannel,
ViPString currentTitle)
Hope this help you.
"Only a life lived in the service to others is worth living..." - Albert Einstein

Similar Messages

  • Sending/Receiving Numerical Values Over Bluetooth

    LabVIEW 2009 STUDENT EDITION W/NXT TOOLKIT. I am a beginner when it comes to LabVIEW. I am working on a school project with the humanoid detecting colored marbles. I set 4 buttons for blue, green, red, and yellow on the front panel. These Boolean values would be compared to values from the color sensor on the Mindstorms 2.0 kit and send numeric values 2-5 to the NXT brick. The NXT brick would read the number and apply the number to a case. The humanoid would ask for the color selected on the front panel. A goal is to send the color detected to an indicator on the front panel. My immediate problem is after 7 hours of searching the internet and trying every vi in the toolkit, I cannot send or receive from the PC or NXT. I only have (1)NXT. Anyone with explicit instructions? Please?

    I am a Windows 7 laptop user. I am using an external Iomega bluetooth adapter that has worked fine for downloading programs to execute. Approximately 17 hours into this problem alone I found a download showing an orange vi that was loading from an NXT\Remote... folder. To complicate things I did a firmware update that erased NXTSHELL. With NXTSHELL reloaded and using the new vi, it is working. The problem now is the vi only sends text. I need to convert the boolean front panel button to either the number representing the color or the name of the color so that it asks the robot to detect blue/2, green/3, yellow/4, red/5. I need the reading vi on the NXT brick to send a True/False and the number or color name too. The included picture is a last ditch effort to get something working at 2:30a in the morning to build on today. I was barely awake. This is rigged to look like it does what it is supposed to do but is not what is intended, as stated above. Please correct or point me in the right direction.

  • ICR Upload negative values over Upload File

    Dear Experts (or in most cases Dear Ralph ; ),
    Ich have a question concerning the Upload File which makes it possible in ICR to upload datas via an Excel/TXT Interface.
    My Question is how can I upload negative values?
    Because when I upload  a value like "-100" the value in ICR will be converted to "100", so a positive amount.
    So how can I explain the system that the value in the txt-file should be uploaded as an negative value?
    Should I control it over the debits/credits indicator?
    Or should the minus stand at the back of the values?
    Thanks in advance for any helpful answer
    Regards
    Thomas

    Hi,
    If I am not wrong it will be through debit credit indicator (SHKZG: S for positive and H for negative)
    Regards,
    Saravan Kanuparthy

  • Help with iPad Identifying Phone Numbers in iMessage Send & Receive Settings / iMessage Syncing Help - iOS 6 - iPhone - iPad

    With iOS6, iPhone and iPad users will see that their Send & Receive iMessage settings have updated across their devices to be made available at both phone numbers and email addresses. You may have also seen alerts on one or more of your devices advising that another device is now using the same Apple ID/phone number for iMessage.
    Being able to be reached on iMessage on both Apple ID and phone numbers across devices means that iMessage can keep the same thread and sync across devices.
    Due to having 2 iPhones on different phone numbers running along side my iPad at one time, (whilst I was waiting for my phone number to be moved to a new provider), my iMessage settings on my iPad lost my phone number completely. I thought I would document the steps to recover this for anyone in the same boat.
    1. Check that you are signed in with the same iCloud Account on both iPad and iPhone.
    2. Turn off iMessage on your iPad from Settings > Messages.
    3. On your iPhone, go to Settings > Messages > Send & Receive. You should see your phone number and your iCloud email address in the 'Your can be reached by iMessage at:' list. Make sure both are ticked.
    4. At this point, I synced my iPhone with iTunes, then synced my iPad with iTunes.
    5. On your iPad, turn iMessage back on - your phone number should now show in the 'You can be reached by iMessage at:' list. Tick the phone number. You should receive an alert on your iPhone.
    This should resolve the issue.
    With the above set up and with the iOS 6 updates, iMessage should now sync fine across devices however I have still found the most successful way to run iMessage is to always start new conversations from your Apple ID and to start new threads by addressing the first message to an Apple ID from an Apple ID.
    To do this, go to Settings > iMessage > Send & Receive and tick your Apple ID in the 'Start new conversations from:' list, then start a new iMessage thread to the recipients Apple ID. This way, the thread will sync across iPad and iPhone. Note that a thread set up this way will not fall back on SMS, so you get a clean iMessage thread. This method also worked/works on iOS 5, as long as you send the first message of a new thread from an iPad (which can only send via Apple ID) to an Apple ID.
    Hopefully this helped someone!

    ipad has no phone number, you use a same email address for both devices. and set it in Settings>Messages>Send & Receive

  • Negative Values in textboxes

    Greetings,
    I am trying to display a textbox in a Dynpro, the value to be displayed is of type Currency but only allows me to enter/display positive numbers (ends with a dump when the associated variable has a negative number), it is associated . If I draw a box making reference to a dictionary field, It works fine displaying and receiving negative values. Is there a flag or a property to set in the screen painter to allow negative values?

    I am declaring my field with a LIKE sentence referring to a transparent table where the components are of type NETWR, the domain it referres to has the Sign flag already checked.
    tables: zsourcetable.
    data:
    reg1 like zsourcetable,
    reg2 like zsourcetable.
    start-of-selection.
    select single *
    from zsourcetable
    into reg1.
    reg2-value = reg1 * -1.
    call screen 100.
    zsourcetable is of type NETWR, the domain it uses has the sign flag checked.
    If i put on the dynpro 100 the field reg2-value, when it has a negative value, the program exits with a dump. If I use the field zsourcetable-value, it works fine. Anyway it is not the solution since I need to display simultaneously several records on screen with the results of calculations.

  • Sending & Receiving compressed Data

    Hi, How can i send & receive compressed data over a network using DeflaterInputStream and InflaterOutputStream, thanks.

    You probably would not use those classes directly, but GZIPInput and GZIPOutput stream instead. you would wrap those streams around the socket Input and Output streams at either end of a socket connection.

  • If two iPhones are linked to the same Apple ID can the other phone see the iMessages I'm sending, received or both?

    If two iPhones are linked to the same Apple ID can the other phone see the iMessages I'm sending, received or both?

    Yes, if both devices is using the same apple id for imessage.

  • USB comunication with a device using LabWindows CVI 7.1 or more late.

    Hello Partners.
     I am try to  get information about USB comunication with a device using CVI 7.1 or more late, I will need to developed a aplication for comunicate with a device but I  have not  idea of How do this. I know how comunicate with the serial port in CVI, but I never have developed any application using the USB port.
    Do you know which are the requirements for do this??
    I have read some information and I am seeing that I needed the driver of device for do this but I do not know what is the command line that will need to send in the aplication for comunicate with my device.
    Somebory knows how can I do this in my application??
    Somebory has some exemplo code in where I can see the commands that I needed to send to the USB port?
    Thanks a lot for your help.
    I will be to hope some suggestion.

    hi,
    think there are three possibilities:
    1. the product comes with an own driver & api
    2. the product comes with an FTDI-device to communicate over
    2.1 you can talk with the device over a virtual COM (rs232)
    2.2. you can talk with the device over  the D2XX-layer (look at the FTDI-webside: "D2XX Programmers guide....")
    best regards
    Simon

  • My iPhone 4S has stopped receiving iMessages, cannot send/load any pictures over whatsapp, cannot join the wifi in my house anymore. What has happened to my iPhone i haven't made any changes?

    My iPhone 4S has stopped receiving/sending iMessages, cannot send/load any pictures over whatsapp and cannot join the wifi in my house anymore.
    Essentially all the things I use my phone for have now stopped working. I constantly have 3G connected (even though i dont want to use it, i want to connect to the wifi in my house) but still when I try to download/ send a picture over whatsapp it comes up with an error message saying the server is unverified, or something equally ridiculous.
    I deleted the app so i could reinstall it (as if that would help), but the app store is started saying "unable to connect", despite 3G, so that bright idea died out pretty sharpish.
    Whenever i try to turn on iMessage, it asks for my Apple ID password, which I know I've typed in correctly because I reset the **** thing about 4 times due to it apparently being "incorrect". Even so, it repeatedly asks for the password over and over as soon as I've entered it, saying it was "unable to connect" before a final "incorrect password" message pops up just to add an extra smack of annoyance.
    I haven't changed a single setting on my iPhone whatsoever. It just suddenly started spiralling into what is now £28/month-worth of pure frustration.
    I don't even have any music or photos on it as I had to free up 3.5GB of space on the **** thing to allow it to update, naively thinking that would solve the problem, but alas it did not.
    I have seen a few questions posted like this one, usually just one of the problems I have, but I seem to have rounded up the whole bunch (lucky me). None of the previously posted questions have received any replies.
    Can some please help me! Honestly, if i see another "unable to..." or "unverified source" pop up again I'll probably smash the thing against the side of my house.
    Cheers.

    On your iPad, go to [Settings > General > Reset > Reset Network Settings] Once that is done, re-connect your iPad to your wifi network.

  • How do I send an array over endpoint 2 and receive an array over endpoint 1?

    Background:
    I'm a device developer.  I have an HID device that interrupt transfers over endpoint 1 and endpoint 2.  The device enumerates successfully as an HID on mac, windows, and linux.  I've use a couple different .dll files to communicate with the device using visual studio and python with some success and now I'd like to get it to work in labview.
    Status to date:
    1.  Successfully installed device hijacker driver so NI MAX can see the device as USB::0x####::0x####:erialNumber::RAW (# inserted to protect the innocent and SerialNumber is an actual number)
    2.  I can see the device in MAX.  Tried to send a line of numbers and something is sent back, but it isn't useful yet.
    3.  Tried interruptusb.vi and it doesn't do anything but timeout.
    4.  Tried Read USB Descriptor Snippet1.vi and an 18 byte array shows up and the VID and PID are parsed out correctly if the bRequest is Get Descriptor and the Descriptor Type is Device.  None of the endpoint descriptor types return anything.  A bRequest won't trigger a device function.  It needs an array over the out endpoint.
    The problem:
    Intuitively I'm at a loss of what to do next.  The device needs to receive a command from a 16 byte array gets passed through the out endpoint (2).  Then it will respond with a 16 byte array through the IN endpoint(1).  It seems as though the interruptusb.vi should work, but the interrupt transfer is a receive only demonstration.  How should I format a 16 byte array to go through the out endpoint? Does it need to be flattened?  

    Thanks for the tip.
    The nuggets were great for getting started and helped with installing the labview hijack driver for the HID device.  Closer examination may lead to the conclusion that the code I'm using is very very similar to the nugget with minor changes to the output.  Definitely the nuggets are useful, but for my device, there is more to it. 
    It is not USBTMC compliant.  It requires an array of bytes be sent and received.  The problem may have to do with timing and ensuring that the byte transfer is correct.  When communicating from visual studio, a declared array of characters works fine.  I tried that with this setup and it doesn't work consistently.  Of particular concern is why with this setup the device shows up, doesn't work properly until stopped, then works fine, but when the labview VI is stopped, the device disappears and no longer available in the VISA combobox.  The Device Manager still shows the device, but Labview must have an open handle to it. 
    I'd really like to be able to call the dll used in Visual Studio, so the user can choose to use the included software or a Labview VI without having to reinstall a driver.  Afterall, HID is great because the driver is under the hood.  Having to load one for Labview defeats the purpose of developing an HID device.  If I wanted to load a driver, I'd program the device to be a USB-Serial device and use the labview VISA serial vi's. 
    For now I'll be happy to get a stable version in Labview that will communicate consistently even if it is the hijacked driver.

  • Value of user variable passed in sender/receiver queries

    Hello experts,
    I have to BEx queries, one sender and one receiver, I linked them in RSBBS
    The problem is that I have InfoObject 0FISCPER as a user variable in the sender query and I fill it with for example "avril 2010" but in the receiver query 0FISCPER is also a user variable but it always receive "#" as value, other values are passed without problems
    Regards,
    Thibault Jacobs

    HI Thibault,
    Try making the User input variable a Mandatory one and then Check ,it shud work.
    Hope u have made the necessary settings in RSBBS and activated it.
    Rgds
    SVU123

  • Issue with Negative Value for Total valuated stock 0VALSTCKQTY.

    Hi Experts,
    we loaded the Cube with datasources 2LIS_03_BX, 2LIS_03_BF and 2LIS_03_UM.
    We mapped the quanity field from 2LIS_03_BF in transformation either into Key figures "Quantity issued from valuated stock" (0ISSVALSTCK) or "Quantity received into valuated stock" (0RECVALSTCK ) of the cube.
    For obtaining the Total Valuated stock, we used the Key figure 0VALSTCKQTY. This key figure is having the Inflow and Out flow values as 0RECVALSTCK and 0ISSVALSTCK. When i tried to check the content of 0VALSTCKQTY, the key figure  0VALSTCKQTY is not present in the infoCube content. I understood that the value for this key figure would be calculated at the time of query execution with the formula
    { Last obtained Valuated stock + (Received Valuated Stock u2013 Issued Valuated Stock ) }.
    The issue is the first records in the query is obtained with negative value for the total valuated stock 0VALSTCKQTY even though the values of Received Valuated Stock  and  Issued Valuated Stock are with Zero.  Could any one please help me on how the first record in the query is with a negative value eventhough the inflow and out flow fields of it are with Zero.
    Many Thanks in advance.
    Jeswanth

    Hi Srini,
    I observed an interresting reason for the stock being with negative in the first record.
    Issue : While executing the BEx report, we have the first record with a negative value.
    Let me explain with an example
    Material  : XYZ
    Plant      : A
    Date of Stock Initialization for data source 2LIS_03_BX -
    >  12th April 2009.
    So on 12 Th April 2009 consider that we have a stock in store with a value of 2640.
    Then we have loaded wih Data source 2LIS_03_BF for all Historic Movement types.
    At the time of query execution we will have the first record with a negative of available stock present on the day of initialization .
    So, as we have initilized the data source 2LIS_03_BX on 12 th April 2009, we have at that time a stock of 2640 in availability.
    Exactly with the same value of 2640, we are having a negative value i.e. -2640.
    and also one more point to be noted is ...as we have initialized the data source 2LIS_03_BX on 12 th APril 2009...it has created a
    opening balance of 2640 on the day of initiailization i.e on 12 th April 2009 in infocube....(which is an extra record...)...so if the previous record of 12,04,2009 is having some value in it..then it will get added to 2640 EA..which will give incorrect stock
    So in the query the records will appear in the below following manner
    Calendar Day     Total stock                                                                Received stock                                          Issued Stock         
    28.12.2005 --->  - 2640 EA
    29.12.2005 --->    2000 EA                                                                       640 EA                                                        0
    10.04.2009 --->      0                                                                                0                                                               2000 EA      
    11.04.2009 -
    >    0                                                                                0                                                                0          
                                 (For making
                                  the earlier record of  initilization to 0  a negative value -2640 EA is created in the first record )
    12.04.2009 (Initializtion day) --->  2640 EA                                                 0                                                                0
    13.04.2009 
    the day before initialization the total stock will be 0 due to the negative effect introduced by the first record and from the day of initialization the records will be the accurate values...  On 12 th april 2009 we can see that a stock of 2640 is brought into the total stock. In fact if there is no negative value i.e. -2640 in the first record then ...the value on 11.04.2009 will be 2640 Ea and this will get summed up with the Opening balance of 2640 EA created by 2LIS_03_BX on the day of intitialization. So on 12 .04. 2009 the total stock will be shown as 5280 EA...so in order to prevent the double value only we observed that the first record is created with the negative of available stock present on the initialization ...to make the record before the day of initialization i.e. 11.04.2009...to be 0...so that from 12 th April 2009 ..will start to see the actual total stock in the query result...
    This is happening only if we use  both the data sources 2LIS_03_BX and 2LIS_03_BF  for loading into BW.....
    If we load alone by 2LIS_03_BF ...then as 2LIS_03_BX is ruled out in the loading...then no negative of available stock will be created ...because there will be bno opening balance created on the day of initialization.....and the opeing balance available will be flowing into consecutive records due to the movement types and 12 th April 2009 will be shown with avaialable total stock of 2640 EA.
    Kindly let us know your opinions on this...
    Thanks.
    regards,
    Jeswanth

  • Flex char 100% with negative values.

    Hello.
    I have in my app a chart (cartessianchart) with a columnset
    of 100% columseries.
    All is fine until negative values appear in the series. For
    those negative values, the representation dissapears.
    I have ported my app to use "stacked" series instead of 100%
    ones and i make the 100% conversion programatically.. but this
    seems to me like reinventing the wheel..
    Perhaps it is not possible to use 100% bars with negative
    values...
    Could you take a look to the code i submit and send me your
    ideas?
    Thanks

    Hi Aman,
    DB not restarted during this time.. we don't have production access. we will get awr report automatically from customer daily. also i am getting issue in our local environment v$rowcache view gets values is negative for dc_users and dc_tablespaces parameter may be it's related production issue...

  • Colum Chart - (3-D) Stacked : compatible with negative values ?!

    Hi,
    In our VC model we are showing a Column Chart - 3-D Stacked.
    On our development server everything works fine. (the query gives positive values for the KPI's only btw)
    In production the bar chart is not being displayed. The bar remains on value 0. I'm quite sure this is related to the fact that we have some negative values on production for some of our keyfigures that we need in the chart. Many others are positive. This is not compatible with stacked charts I think, but.....on our quality environment the chart works fine with negative values for the same KPI's as well. The negative values are more or less ignored in the graph on quality.
    So my question is : Is it correct that negative values are officialy not compatible with VC stacked charts ? Why is it then working (ignoring the negative values) in some circumstances and other circumstances not ? The only difference between quality and production is that the KPI values are different but the same KPI's are negative anyway on these environments. The models (queries and VC model) were transported from dev->QA and to production.
    thanks for any feedback.

    Hi Todd,
    Depending how you look at costs, it's not expensive.
    A single developer license of Anychart 5 costs USD 499.00 - 15% if you use the APEX15 promotion code.
    If you spend a couple of days trying to integrate with something else you easily went over that amount.
    So really, it depends in which perspective you look at it. The workaround with Excel, is that really an option? How long would it take for every person wanting to see that screen? How long would it take before you get to $440?
    Anyway if you wait till next year, Anychart 5 is included in APEX 4.0 and you have it out of the box.
    Just my thoughts,
    Dimitri

  • Problems with send receive Email ( Adobe Interactive)

    I have heard the E-Learning(Send, Receive, and Process Interactive Forms via Email in SAP NetWeaver Application Server ABAP (RIG session 4A)
    ) about this topic on this webpage but i still have to many problems. Can somebody give me a source code, that i know how this works. Or is there a source code anywhere in the sap?
    I hope anybody can help me, Thanks!

    Thanks. I have written Programm, but it does not work as i want it to do. I will send an Email with attached Adobe Interactive Firm to [email protected]. I tried it with "*lo_recipient = cl_sapuser_bcs=>create( sy-uname )" at the marked(bold, fat) position. It worked but the Email was send to my SAP-Account, but i want to send to [email protected], so I tried this (see at code in bold, fat):
    lo_rec TYPE adr6-smtp_addr VALUE '[email protected]'.   " Empfänger Receiver
    lo_recipient = cl_cam_address_bcs=>create_internet_address( lo_rec ).
    But it doens`t send the email.
    Can anybody help me please???
    Kevin
    Here my Code:
          Report FP_EXAMPLE_01
          Printing of documents using PDF based forms
    REPORT z_example_02.
    Data declaration
    DATA: carr_id TYPE sbook-carrid,
          customer          TYPE scustom,
          bookings          TYPE ty_bookings,
          connections       TYPE ty_connections,
          fm_name           TYPE rs38l_fnam,
          fp_docparams      TYPE sfpdocparams,
          fp_outputparams   TYPE sfpoutputparams,
          error_string      TYPE string,
          l_booking         TYPE sbook,
          t_sums            TYPE TABLE OF sbook,
          l_sums            LIKE LINE OF t_sums,
          fp_formoutput     TYPE fpformoutput.
    PARAMETER:      p_custid TYPE scustom-id DEFAULT 38.
    SELECT-OPTIONS: s_carrid FOR carr_id     DEFAULT 'AA' TO 'ZZ'.
    PARAMETER:      p_form   TYPE tdsfname   DEFAULT 'FP_EXAMPLE_01'.
    PARAMETER:      language    TYPE sfpdocparams-langu   DEFAULT 'E'.
    PARAMETER:      country  TYPE sfpdocparams-country DEFAULT 'US'.
    Get data from the following tables: scustom(Flight customer)
                                        sbook  (Single flight reservation)
                                        spfli  (Flight plan)
    SELECT SINGLE * FROM scustom INTO customer WHERE id = p_custid.
    CHECK sy-subrc = 0.
    SELECT * FROM sbook INTO TABLE bookings
             WHERE customid = p_custid
             AND   carrid   IN s_carrid
             ORDER BY PRIMARY KEY.
    SELECT * FROM spfli INTO TABLE connections
             FOR ALL ENTRIES IN bookings
             WHERE carrid = bookings-carrid
             AND   connid = bookings-connid
             ORDER BY PRIMARY KEY.
    Print data:
    First get name of the generated function module
    CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'
      EXPORTING
        i_name     = p_form
      IMPORTING
        e_funcname = fm_name.
    IF sy-subrc <> 0.
      MESSAGE e001(fp_example).
    ENDIF.
    Set output parameters and open spool job
    fp_outputparams-nodialog = 'X'.    " suppress printer dialog popup
    fp_outputparams-getpdf  = 'X'.    " launch print preview
    CALL FUNCTION 'FP_JOB_OPEN'
      CHANGING
        ie_outputparams = fp_outputparams
      EXCEPTIONS
        cancel          = 1
        usage_error     = 2
        system_error    = 3
        internal_error  = 4
        OTHERS          = 5.
    Set form language and country (->form locale)
    fp_docparams-langu   = language.
    fp_docparams-country = country.
    *fp_docparams-fillable = 'X'.
    *fp_docparams-langu   = 'E'.  "wird jetzt automatisch gesetzt, bzw. kann dynamisch verändert werden
    *fp_docparams-country = 'GB'. "wird jetzt automatisch gesetzt, bzw. kann dynamisch verändert werden
    currency key dependant summing
    LOOP AT bookings INTO l_booking.
      l_sums-forcuram  = l_booking-forcuram.
      l_sums-forcurkey = l_booking-forcurkey.
      COLLECT l_sums INTO t_sums.
    ENDLOOP.
    Now call the generated function module
    CALL FUNCTION fm_name
      EXPORTING
        /1bcdwb/docparams  = fp_docparams
        customer           = customer
        bookings           = bookings
        connections        = connections
        t_sums             = t_sums
      IMPORTING
        /1bcdwb/formoutput = fp_formoutput
      EXCEPTIONS
        usage_error        = 1
        system_error       = 2
        internal_error     = 3
        OTHERS             = 4.
    IF sy-subrc <> 0.
      CALL FUNCTION 'FP_GET_LAST_ADS_ERRSTR'
        IMPORTING
          e_adserrstr = error_string.
      IF NOT error_string IS INITIAL.
        we received a detailed error description
        WRITE:/ error_string.
        EXIT.
      ELSE.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDIF.
    Close spool job
    CALL FUNCTION 'FP_JOB_CLOSE'
      EXCEPTIONS
        usage_error    = 1
        system_error   = 2
        internal_error = 3
        OTHERS         = 4.
    IF sy-subrc <> 0.
      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    *********************Send the form*******************
    *********************to the Customer*****************
    *********************via Email***********************
    *IF i_down = abap_true.
    DATA: filename TYPE string,
            path TYPE string,
            fullpath TYPE string,
            default_extension TYPE string VALUE 'PDF'.
    Data:
    lt_att_content_hex TYPE solix_tab.
    *DATA: data_tab TYPE TABLE OF x255.
    CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
      EXPORTING
        buffer     = fp_formoutput-pdf
      TABLES
        binary_tab = lt_att_content_hex.
    CLASS cl_bcs DEFINITION LOAD.
    DATA:
    lo_send_request TYPE REF TO cl_bcs VALUE IS INITIAL.
    lo_send_request = cl_bcs=>create_persistent( ).
    DATA:
    lt_message_body TYPE bcsy_text VALUE IS INITIAL.
    DATA: lo_document TYPE REF TO cl_document_bcs VALUE IS INITIAL.
    APPEND 'Dear Vendor,' TO lt_message_body.
    APPEND ' ' TO lt_message_body.
    APPEND 'Please fill the attached form and send it back to us.'
    TO lt_message_body.
    APPEND ' ' TO lt_message_body.
    APPEND 'Thank You,' TO lt_message_body.
    lo_document = cl_document_bcs=>create_document(
    i_type = 'RAW'
    i_text = lt_message_body
    i_subject = 'Vendor Payment Form' ).
    DATA: lx_document_bcs TYPE REF TO cx_document_bcs VALUE IS INITIAL.
    TRY.
        lo_document->add_attachment(
        EXPORTING
        i_attachment_type = 'PDF'
        i_attachment_subject = 'Vendor Payment Form'
        i_att_content_hex = lt_att_content_hex ).
    CATCH cx_document_bcs INTO lx_document_bcs.
    ENDTRY.
    lo_send_request->set_document( lo_document ).
    DATA:
    lo_sender TYPE REF TO if_sender_bcs VALUE IS INITIAL,
    lo_send TYPE adr6-smtp_addr VALUE '[email protected]'.   "Absender SENDER
    lo_sender = cl_cam_address_bcs=>create_internet_address( lo_send ).
    Set sender
    lo_send_request->set_sender(
    EXPORTING
    i_sender = lo_sender ).
    Create recipient
    DATA:
    lo_recipient type ref to if_recipient_bcs value is initial.
    Data:
    lo_rec TYPE adr6-smtp_addr VALUE '[email protected]'. " Empfänger Receiver
    lo_recipient = cl_cam_address_bcs=>create_internet_address( lo_rec ).
    *lo_recipient = cl_sapuser_bcs=>create( sy-uname ).
    Set recipient
    lo_send_request->add_recipient(
    EXPORTING
    i_recipient = lo_recipient
    i_express = 'X' ).
    *lo_send_request->add_recipient(
    *EXPORTING
    *i_recipient = lo_recipient
    *i_express = 'X' ).
    Send email
    DATA: lv_sent_to_all(1) TYPE c VALUE IS INITIAL.
    lo_send_request->send(
    EXPORTING
    i_with_error_screen = 'X'
    RECEIVING
    result = lv_sent_to_all ).
    COMMIT WORK.
    MESSAGE 'The payment form has been emailed to the Vendor' TYPE 'I'.

Maybe you are looking for