JMS Ack for Asynchronous interface

Hi Experts
Here My Interface is Proxy to PI to JMS (MQ) asynchronous.
Once message is processed asynchronously MQ will send the Acknowledgement to PI with different Queue. Then PI need to pick this with sender JMS adapter.. is this approach will work?
IF it I it worku2019s Please let me know the steps. Here I donu2019t want to use the BPM.
Thank you
Srini

Dear Srinivasreddy
As you mentiuoned this is an Asyncronous communication, then what are you going to do with response.
Is your proxy expecting a response?
In that case you should create a Synchronous interface and not an Asynchronous one.
Please clarify
Sourabh

Similar Messages

  • Best option for Asynchronous method invocation? JMS or Pure Java Thread

    Hi,
    We've a swing based Client application which is supposed to run with a server in J2EE environment. Some process like Search etc are very time consuming. So we are going for asynchronous process.
    Now the question is to find a best option for this. Two possible candidates are
    1. JMS
    2. Java Thread.
    Can anybody suggest me which one is the best option in this context?

    Actually my thought was the issues with code maintainability.Maintainability is different issue, it is much related to OOAD and design pattern you might want to choose to avoid coupling (thus high reusability and maintainability - eg: for future enhancement, etc)..
    public interface SearchService {
         public static class DefaultFactory {
                 public SearchService getInstance() {
                          return HttpSearchService.getInstance();
         public void search (String[] keywords, Observer obs);
    public class HttpSearchService implements SearchService {
         public static HttpSearchService getInstance() {
                ... bla bla bla singleton ...
         public void search(final String [] keywords, final Observer obs) {
                     (new Thread() {
                              public void run() {
                                    .. do http request ...
                                    List result =  ... parse http response ...
                                    obs.update(list);
                     }).start();
    SearchService ss = SearchService.DefaultFactory.getInstance();
    ss.search( new String[] { "get", "me", "my" , "dukes" }, myTableModel );
    ...You can, in future, replace the default factory HttpSearchService with something faster, more appropriate SearchService, without changing many codes.
    rgds,
    Alex

  • Use JMS For Sync interface

    Hi all ,
    We would like to make a sync interface that retrieve information from the R/3, the send application is at the Mainframe so we use the WebSphere MQ to send the request to the XI using the JMS adapter and than to the R/3 via the RFC adapter (Appl A -> WbSphere MQ -> JMS Adapter -> XI -> RFC Adapter -> R/3 and via versa ).
    Can we use the JMS adapter for that scenario ? can the JMS adapter be used for synchronous interface ?
    Best Regards ,
    Yaki

    Yes you can use JMS. You will still have to interpret the message so you can update the database but your client can do this asynchronously. In other words the client can send the message to JMS and go about doing other things instead of having to wait for the process to complete. We are actually doing this sort of thing and it is working out well.

  • Flex with JMS Topic/Queue for Asynchronous messaging

    I have been working on Flex and JMS integration using Data
    Services for Asynchronous messaging. I am able to do this
    successfuly. Now I am in need to do the same without using the Data
    Services piece.
    For doing this I have done the following ......
    I have created a JMS Webservice in the Oracle JDeveloper 10G
    along with Webservice Client.I am able to Listen to JMS Topic/Queue
    ( this has been created in the Oracle AS ) using this Webservice
    and receive the messages from this JMS Topic/Queue
    Asynchronously.....
    But If I need to use the Flex Client , I am not able to
    Communicate with this Webservice to listen to the JMS Topic/Queue.
    Did any one in this forum tried to communicate with JMS
    Topic/Queue without using Flex Data Service.If so please share your
    inputs.

    Here is my confusion (I'm using J2EESDK1.3).
    On a local server I did the following
    j2eeadmin -addJmsFactory jms/RemoteTCF topic -props url=corbaname:iiop:mars#mars
    In the app client running on the local server I had the code
    ic = new InitialContext();
    // JNDI lookup. The resource factory ref points to the
    // Remote Connection Factory I registered
    tcf = (TopicConnectionFactory)ic.lookup("java:comp/env/jms/TopicConnectionFactory");
    // The env ref points to jms/Topic of the local server
    pTopic = (Topic)ic.lookup("java:comp/env/jms/PTopic");
    So I'm assuming that I'm using a connection factory that connect to mars and a Topic on the local box.
    On remote server mars, I deployed a MDB which use
    jms/TopicConnectionFactory and jms/Topic. But I'm thinking this jms/Topic and the one I used on the local box are not the same one. Right? Then how could the app client and the MDB share messages?
    Some of my explanation I don't if it makes sense or not.
    ConnectionFactory is a way to tell what kind of connection it could generate (Queue, Topic, Durable etc) and Where the connection would go to (local or remote).'
    As for as destination, I'm not sure. How could two server share one Topic?

  • Synchronous - asynchronous interface (RFC - XI - jdbc)

    hello to everybody!
    i want configure a synchronous - asynchronous interface (RFC - PI - jdbc) whit my PI 7.1
    This RFC send 2 output tables to PI/XI and i want write it into 2 different tables in a SQL Server Database.
    How can i do it?
    i tried whit one mapping to a unique outbound datatype...but only header table was insert and not rows.
    i tried whit 2 Receiver Interfaces but i have on mapping the follow error:
    Multiple inbound interfaces not supported for synchronous calls
    so??
    other possibility?
    BPM?
    please help me
    Thanks
    Alessandro

    Hi,
    I have a similar problem; I have JMS - PI - RFC synchronous scenario. I will receive message from JMS, and depending on the data received, I should call either of two RFCs (NOT BOTH). The BAPI return message should then be sent back to JMS.
    Hence, I have one "Sender/Outbound" Message Interface, one receiver determination for that Message Interface - in which there is "one" receiver (backend SAP system).
    In "Interface Determination", I specifed the two BAPIs as two Interfaces, and defined conditions based on "context objects" - since I need to know the Interface Mapping "dynamically"
    However, I get the error - "Multiple inbound interfaces not supported for synchronous calls ". any suggestions on how to proceed?
    I am posting this question here as it is a related issue. Hope it is fine.
    Thanks,
    Archana

  • Dynamic receiver determination for synchron interface

    Hello everybody,
    I want to use dynamic receiver determination for a synchron scenario.
    The problem is, that the interface 'ReceiverDetermination' (http://sap.com/xi/XI/System SAP BASIS 7.00) is a asynchron interface.
    This leads to an error when activating the Interface-Mapping (synch source Interface -> asynch destination Interface ReceiverDetermination)
    Is there a way to use the dynamic receiver determination for synchron interface?
    Thanks a lot,
    Thomas

    Hi Thomas,
    I guess your scenario is not possible ASIS, since XI doesn't support 1:n for sync interfaces (and even if your mapping condition reduces it to 1:1, actually it is still 1:n, since your receiver list is unbounded).
    Theoretically, you could make it work with BPM, though.
    But I've never worked with a Receiver Determination Step reading from an enhanced receiver determination in ID (though there should be no problems).
    Use sync async bridge, then use receiver determination step to obtain the receiver from an enhanced Receiver Determination. Pay attention that this enhanced receiver determination is a dummy one, using a mapping from your async abstract interface to the ReceiverDetermination interface. Once your mapping has determined the receiver, the enhanced receiver determination will return that receiver to the Receiver Determination step in the BPM. Then use this receiver in the sync send step (in mode receiver from receiver list, not from context).
    The receiver determination of the actual sync send step may be a standard one, with the several receivers there (even if there are several there, at the moment of the sending, only one will be used).
    Maybe it will work, maybe not.
    Just try it.
    Regards,
    Henrique.

  • Synchronous / Asynchronous Interface

    I am kinda confused about Synchronous interface/asynchronous.. When we talk about synchronous are we talking synchronous for the entire interface (From Sender system to XI to Receiver system) or we are just referring to Connection with XI system?
    If somebody can explain a classic synchronous and asynchronous scenario with a good example, I would really appreciate it..

    > I am kinda confused about Synchronous
    > interface/asynchronous.. When we talk about
    > synchronous are we talking synchronous for the entire
    > interface (From Sender system to XI to Receiver
    > system) or we are just referring to Connection with
    > XI system?
    XI decouples the sender and receiver of messages through interfaces. So, if the interface for the sender (called outbound interface) is synchronous, the sender is blocking on the request and the sender expects a response from XI synchronously.
    Consider
    System A -> XI -> System B
    If A's interface in XI is synchronous, then XI has to send a response to A synchronously. However XI may have an asynchronous interface with B. i.e. XI may post a message to B and may not expect a response from B. But A will not care what kind of processing happened between and B as long as A got a response back.

  • Asynchronous Interfaces treated as Synchronous one?

    Hi eXperts,
    I'm now having a weird problem on an Asynchronous inbound interface in a SOAP-XI-R/3 scenario.
    When data coming through XI into R/3, the proxy is called, and works fine. But after the proxy call, a short dump happens in CL_PROXY_FRAMEWORK->XI_PROCESS_PAYLOAD saying the payload is 'null'. Since this is an Asynchronous interface, the payload would certainly be 'null' after the proxy call. So the problem is why this method even be called after the proxy?
    I checked the stack and found that CALL_PIPELINE_SYNC is used instead of CALL_PIPELINE_ASYNC, and I believe this might be the problem: SAP is treating this as an syschronous interface. However after checking settings in IR, both inbound and outbound interfaces are asynchronous.
    Has someone met this before? Does anybody know why SAP is treating an asynchronous interface as a synchronous one?
    Thanks in advance for your help.
    Regards
    Luis

    Hi,
    Did you check sender SOAP Adapter configuration ? What is the quality of service you mentioned ? it should be EO in your case.. check out this..
    also check is this proxy method is giving back the response.. check SXMB_MONI->Trace..
    Hope this helps,
    Regards,
    Moorthy

  • Is it possible DLSW with remote ack for LLC2.?

    Hello.:
    In the following env I have an SNI connection:
    3745-Tokenring/2612-FrameRelay-2612/Tokenring-OSA.
    the 2612 is DLSW.
    I have noticed, sometimes,when there is a HW problem in the right side, the 2612left, maintains the LLC2 session with R/Rs and not disconecting the session blocking the Virtual Route in the NCP of 3745.
    Is there an eassy way of doing remote ACK for Token ring LLC2 using DLSW over Frame Relay.?
    Is the source-bridge passthrough xxx command supported by DLSW.?
    Thanks a lot.
    Casimiro

    Hi,
    if you need the RR's ect to flow across dlsw than you can use dlsw fst. With fst dlsw does not do local-ack anymore. that means that all frames including RR's are transported to the other side. The llc2 connection is then truley end to end betweeen the 3745 and the tokenring OSA.
    However you must be aware of a couple of limitations.
    Depending on your mtu on the tokenring i assume 4k. You must either configure the lf parameter on the dlsw remote peer statment to a value below the mtu of your WAN or you must make sure that the WAN can carry a maximum tokering frame + 12 bytes dlsw fst header + ip header. You might have to increase the mtu on your frame relay interfaces.
    With fst there is no tcp session anymore doing the segmentation of large frames, every packet is encapsulated individualy and send right away.
    Besides that you have only limited visibility to the sessions since the router is not participating in any llc2 connections, the router simply forwards packets.
    thanks...
    Matthias

  • Enabling to see the Source payload for synchronous Interface

    Hi Experts,
    Am working on a SOAP <-> RFC synchronous interface and PI version is 7.4 dual stack. Am unable to see the source payload when a
    message is triggered from the Source Webservice. I can only see the receiver payload in RWB for request msg i.e the RFC payload.
    Even for Response, I can only see the receiver payload which is sent to webservice and not the source payload from ECC on the RFC.
    I have built the interface using ICO. I have made the changes in NWA, by setting the RemoveBody field to false.
    Please let me know if any other settings are required. I have checked all other threads related to this issue and could not find the solution
    to my issue where only the source payload in the synchronous interface is missing. In case of Asynchronous interface, the source payload
    is visible.
    Please assist me how can I enable this.
    Regards,
    Vish...

    Hi Vishwanath,
    Please check the below blog
    Message Staging and Logging Options in Advanced Adapter Engine of PI 7.3x
    regards,
    Harish

  • FEH for File Interfaces?

    Hello Experts,
    Can we use Forward Error Handling (FEH) for implementing error handling in File Interfaces ?
    Like for simple Application Server file interfaces, if something goes wrong during the process of writing/reading a file on App Server, can we use FEH for showing the log?
    I know it is a concept used for PI...so we want to know if it can be used for file interfaces as well? Just want to keep similar approach for error handling and logging (for both PI and File Interfaces).
    Thanks.

    Edit 1 May 2015: Added inbound
    Just a slight correction.
    FEH is used in the ABAP backend systems and are only for asynchronous inbound proxy interfaces. It is not available for sync proxies, IDocs, BAPIs. Neither is it available for any error handling on the PI system itself.
    PI/XI: Forward Error Handling (FEH) for asynchronous proxy calls with the use of Error and Conflict Handler (ECH)
    Message was edited by: Eng Swee Yeoh

  • CompletionService for asynchronous recurring tasks

    Hi everybody,
    I have the following use case: I want to poll and convert newsfeeds.
    Which means that my job consists of two different tasks:
    1. The polling
    Basically this means, that I need to download an xml document. This should be done in a scheduled way like "Download this feed
    every n hours". So it is an asynchronous recurring task, that is parametrized with the polling interval specific to each thread.
    2 The conversion
    Here the newsfeed downloaded before should be converted into a new format.
    My idea was not, to achieve this via a ExecutorCompletionService. That would work well, if it weren't for the scheduling and recurrent execution:
    You can initialize an ExecutorCompletionService with a ScheduledThreadPoolExecutor as its Executor. But since the ExecutorCompletionService only uses the Executor interface to do its job, I cannot achieve the individual scheduling/recurrent execution
    of my download-task like that.
    I am currently considering to extend ExecutorCompletionService and override the submit method to handle the scheduling, according to the feed specific interval. Problem here: I do not know how the queuing is implemented in ExecutorCompletionService and how to deal with that.
    Please shed some light into this (admittedly very specific) problem :-)
    Edited by: er4z0r on 20.01.2010 17:50

    O.K. I tried to implement a CompletionService for scheduled recurring tasks. And as a word of warning: I did NOT succeed. Don't try this at home ;-)
    I did this by extending the CompletionService interface so that it provides scheduling-methods:
    package org.example.demo.scheduledcompletion;
    import java.util.concurrent.Callable;
    import java.util.concurrent.CompletionService;
    import java.util.concurrent.ScheduledFuture;
    import java.util.concurrent.TimeUnit;
    * Extends the CompletionService to allow the usage of scheduled tasks
    * @author tbender
    public interface ScheduledCompletionService<V> extends CompletionService<V> {
         ScheduledFuture<?> submitAtFixedRate(Callable<V> command, long initialDelay, long period, TimeUnit unit);
         ScheduledFuture<?> submitWithFixedDelay(Callable<V> command,long initialDelay, long delay, TimeUnit unit);
    }I then added a class implementing this interface and internally using a ScheduledExectuorService instead of an normal Executor like ExecutorCompletionService. I took most of the code from ExecutorCompletionService :
    package org.example.demo.scheduledcompletion;
    import java.util.concurrent.BlockingQueue;
    import java.util.concurrent.Callable;
    import java.util.concurrent.ExecutionException;
    import java.util.concurrent.Future;
    import java.util.concurrent.FutureTask;
    import java.util.concurrent.LinkedBlockingQueue;
    import java.util.concurrent.ScheduledExecutorService;
    import java.util.concurrent.ScheduledFuture;
    import java.util.concurrent.TimeUnit;
    import java.util.concurrent.TimeoutException;
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    * Immplementation of ScheduledCompletionService using a
    * ScheduledExecutorService
    * This class is supposed to provide a CompletionService for asynchronous
    * recurring tasks. After using one of the schedule methods to schedule a
    * recurring task, a Future representing the task will be available once the
    * task is done.
    * @author tbender
    public class ScheduledExecutorCompletionService<V> implements
              ScheduledCompletionService<V> {
         private final ScheduledExecutorService executor;
         private final BlockingQueue<Future<V>> completionQueue;
         private final Log log;
          * FutureTask extension to enqueue upon completion
          * @author tbender
         public class QueueingFuture extends FutureTask<V> {
               * (non-Javadoc)
               * @see java.util.concurrent.FutureTask#run()
              @Override
              public void run() {
                   log.debug("run called");
                   super.run();
                   log.debug("Size of Completionqueue before adding this task: " + completionQueue.size());
                   completionQueue.add(this);
                   log.debug("Size of Completionqueue after adding this task: " + completionQueue.size());
              @Override
              public boolean cancel(boolean mayInterruptIfRunning) {
                   log.debug("cancel called");
                   boolean canceled = super.cancel(mayInterruptIfRunning);
                   if (canceled) {
                        log.debug("Successfully canceled.");
                   } else {
                        log.warn("No succcess canceling the job");
                   return canceled;
              @Override
              public V get() throws InterruptedException, ExecutionException {
                   log.debug("get called");
                   return super.get();
              @Override
              public V get(long timeout, TimeUnit unit) throws InterruptedException,
                        ExecutionException, TimeoutException {
                   log.debug("get called");
                   return super.get(timeout, unit);
              @Override
              public boolean isCancelled() {
                   log.debug("isCancelled called");
                   return super.isCancelled();
              @Override
              public boolean isDone() {
                   log.debug("isDone called");
                   return super.isDone();
              @Override
              protected boolean runAndReset() {
                   log.debug("runAndReset called");
                   return super.runAndReset();
              @Override
              protected void set(V v) {
                   log.debug("set called");
                   super.set(v);
              @Override
              protected void setException(Throwable t) {
                   log.debug("set exception called");
                   super.setException(t);
              public QueueingFuture(Callable<V> callable) {
                   super(callable);
                   log.debug("creating QueueingFuture for callable: " + callable);
              public QueueingFuture(Runnable t, V result) {
                   super(t, result);
                   log.debug("creating QueueingFuture for runnable: " + t
                             + " and result " + result);
              @Override
              protected void done() {
                   log.debug("done called");
          * @param executor
         public ScheduledExecutorCompletionService(ScheduledExecutorService executor) {
              super();
              if (executor == null) {
                   throw new IllegalArgumentException("You must specify an executor");
              this.log = LogFactory.getLog(this.getClass());
              this.executor = executor;
              this.completionQueue = new LinkedBlockingQueue<Future<V>>();
          * @param executor
          * @param completionQueue
         public ScheduledExecutorCompletionService(
                   ScheduledExecutorService executor,
                   BlockingQueue<Future<V>> completionQueue) {
              super();
              if (executor == null || completionQueue == null) {
                   throw new IllegalArgumentException();
              this.log = LogFactory.getLog(this.getClass());
              this.executor = executor;
              this.completionQueue = completionQueue;
         @Override
         public ScheduledFuture<?> submitAtFixedRate(Callable<V> command,
                   long initialDelay, long period, TimeUnit unit) {
              if (command == null) {
                   throw new IllegalArgumentException();
              log.debug("Submitting new " + command.getClass().getName()
                        + " at fixed rate of " + period + " " + unit);
              QueueingFuture f = new QueueingFuture(command);
              return this.executor.scheduleAtFixedRate(f, initialDelay, period, unit);
         @Override
         public ScheduledFuture<?> submitWithFixedDelay(Callable<V> command,
                   long initialDelay, long delay, TimeUnit unit) {
              if (command == null) {
                   throw new IllegalArgumentException();
              log.debug("Submitting new " + command.getClass().getName()
                        + " at fixed delay of " + delay + " " + unit);
              QueueingFuture f = new QueueingFuture(command);
              return this.executor.scheduleWithFixedDelay(f, initialDelay, delay,
                        unit);
         @Override
         public Future<V> poll() {
              return this.completionQueue.poll();
         @Override
         public Future<V> poll(long timeout, TimeUnit unit)
                   throws InterruptedException {
              return this.completionQueue.poll(timeout, unit);
         @Override
         public Future<V> submit(Callable<V> task) {
              if (task == null) {
                   throw new IllegalArgumentException();
              log.debug("Submitting new " + task.getClass().getName());
              QueueingFuture f = new QueueingFuture(task);
              this.executor.submit(f);
              return f;
         @Override
         public Future<V> submit(Runnable task, V result) {
              if (task == null) {
                   throw new IllegalArgumentException();
              log.debug("Submitting new " + task.getClass().getName());
              QueueingFuture f = new QueueingFuture(task, result);
              this.executor.submit(f);
              return f;
         @Override
         public Future<V> take() throws InterruptedException {
              return this.completionQueue.take();
    }See next post for tests.

  • Distortion in Save For Web interface

    I am still having problems with my Save For Web interface. Attached is a screen where you can see that with just the Optimized view showing (in this case 72%), the picture looks as expected. But if I go to 2-up or 4-up views, the 2nd image (which was the 72% Optimized) is now all pixelated as if it were a GIF.

    OMG!  How many years have I been using this program and I have never noticed this until now?!?
    Sorry for the brain fart and thanks for pointing that out!!! 
    I am really having a good laugh at myself about this one!
    Jules

  • Hi all, i'm new and facing a problem while creating a new file for Xcode. I can't select the box "with XIB for user interface" if the subclass is "UIViewController".this problem happen after i upgrade Xcode to 4.6 version.Appreciate for any help rendered.

    Hi all, i'm new to Mac book & Xcode. I'm learning and facing problems while creating a new file for Xcode. Before i upgrade the software, i have no issue to create simple steps in apps. After upgrade Xcode to 4.6 version, i'm facing lot's of issue eg.
    1) "the identity "iphone developer" doesn't match any valid certificate/ private key pair",
    2) can't select the box "with XIB for user interface" if the subclass is "UIViewController"..
    Appreciate for any help rendered.

    Mikko777 wrote:So what is the best?
    I wouldn't judge. I've been to Arch for a week, you know? But as said, it's VERY close to it.
    What I dislike after a week is makepkg not handling dependencies automatically (which would be overhead, so probably not appropriate).
    Mikko777 wrote:Also theres KDEmod for modular kde, dunno if its for 64 bits tho.
    Don't actually need that as said ... I see no real benefit of having that other than not beeing a KDE user or having Gentoos useflags.
    Mikko777 wrote:PS:You produce a lot of text and welcome smile
    Yeah. Wonder why I'm still employed? So do I ...

  • Creation of Server Proxy for  Message interface with External Defination

    Dear All,
    I am getting a problem while generating a server proxy for the inbound interface . The request message used in the inbound interface is a external definition which is uploaded using a XSD file. The XSD file was supplied by a third party which is having very high complex strucuture and used lot of abstract data types in the design. When i tried to generate the proxy in the R/3 system (Transaction SPROXY) for the inbound interface i am getting following error.
    Interface uses external and internal message definitions
    Message no. SPRX122 *
    Diagnosis
    In a message interface you can use messages from different sources:
    Message types and fault message types edited in the Enterprise Services Repository
    Messages imported into the Enterprise Services Repository (external definitions, RFC, IDoc)
    In the current message interface, message types from different sources have been used. Since messages from these different sources must be handled differently during proxy generation, such a mixture of messages within a message interface is not possible.
    System Response
    The interface cannot be generated.
    Procedure
    Change the interface definition accordingly in the Enterprise Services Repository.
    Please guide me, how to generate the proxy for the interface with external defination message. I could nt geneate manullay, because it is having very high complexity and its a big structure.
    Is there is any way to generate the proxy for interface with external definition
    Regards
    Vijayanand

    Hi,
    i.       Import your message schemas from external definitions, or RFCs or IDocs from SAP systems. These definitions already contain data types.
    ii.       Create a message interface and reference the messages of the external definition, or the RFC or IDoc message.
    Check this, it may help you
    http://help.sap.com/saphelp_nw04/helpdata/en/3f/01623c4f69b712e10000000a114084/content.htm
    REgards
    Seshagiri

Maybe you are looking for

  • Odbc.ini entry on local unix server to connect to a T10 on remote server

    I am trying to setup an entry in the ODBC.INI file on local unix server that has T10 client installed. I want to connect to a T10 datastore on a different server using this ODBC entry (client/server connection for a Informatica tool) Could some one t

  • ITunes can't back up iPhone to iCloud

    I don't understand.  If I'm NOT backing up iPhone to my computer, but instead want to back it up to iCloud, why do I get a message in itunes that says "iTunes could not back up the iPhone because not enough free space available on this computer. But

  • Embed image into runtime skin (.swf)

    Hi all, I'm trying to embed an image into a runtime skin but I have this error : Error: Skin for skinsRuntimeBase0.ApplicationSkin2._ApplicationSkin_Group1.contentGroup.BoutonPerso8.Bout onPersoSkinRed16._BoutonPersoSkinRed_Image1 cannot be found. wh

  • Can't e-mail single page from pdf file w multiple pages

    wow if this is going to be as hard as getting a screen name.....only adobe anyway, i have a multiple page document i am scanning. while scanning i can single out a single page and e-mail it. when i save and go tot he document later i can not send a s

  • Crystal Reports Sort Bindings

    I saw a post here regarding problems with sorting and I am having what I believe is a slightly different issue (or maybe not understanding the question). Anyway, I created a report in Crystal Reports 2008.  When I did so, I added sort bindings to a c