PfR symmetry

Dear All,
I am mid way through delivery of an MPLS network for a customer. We have the option of adding a DMVPN internet backup. The WAN routing protocol is BGP for both DMVPN and MPLS (MPLS is straight routing - no overlay or getvpn)
The customer has some pretty odd ideas about how to use the service, mainly they are very paranoid about oversubscibing the MPLS link for their "golden" application, so have come up with all kinds of weird and wacky solutions that they call "requirements". As a result, they have the idea that they cannot route all traffic over MPLS, and instead want to create a mix of route filter, PBR, NAT, ACL and all kinds of horrible things to keep the MPLS link "sacred".
I would like to guide them to use the service in a better way leveraging PfR, something simple to start with like:
- use MPLS all of the time by default
- when it reaches 80% utilisation, switch the non-critical traffic to DMVPN yet keep the "golden" app on MPLS
- this policy is applied at both branch and hub BRs
I have read this cisco wiki (it is rather good!!!!):
http://docwiki.cisco.com/wiki/PfR:Solutions:EnterpriseDualVPN#PfR_performance_and_load_policy_test_case
Where I get a bit lost is in the symmetry. Is it symmetrical?
For example, if a branch MPLS link hits 81% outbound utilisation, then uses dynamic PBR to switch outbound traffic to VPN. Sorted! but what about the inbound? If that is hitting 81% also. What does PfR do?
This is where I get a bit lost. For the inbound to branch, the hub must do something surely? Consider the MPLS capacity is 100M - the 8.1M to the branch is in policy so should keep forwarding via MPLS. How does it know that the branch is OOP?
If it doesn't do that, you end up with assymetric traffic (branch outbound DMVPN, inbound MPLS).
Am I missing something here? Any advice you can give us much appreciated.
Thanks a million! 
Phil

Disclaimer
The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
Liability Disclaimer
In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
Posting
Ah, well my experience with asymmetrical routing has often been with similar bandwidth paths, so it's not normally a problem unless there's some "stateful" device between hosts.  But I can see why inadvertent transit via VSAT might be considered a problem.  ;)
I think PfR can help us with the outbound traffic from branch, but I struggle to see how it can help with the inbound IF using utilization only on HUB BR - agree it would never go out of policy (10M to a single branch means the hub is only at 10%).
Ah, it works because, as noted, PfR will see the jump in latency (passively and/or actively) to the destination if you have it do more than monitor egress port utilization.  (When I had used OER/PfR, I had international multipoint.  So "in" congestion to any one site could be caused by the aggregate of multiple other sites "out" to it.
With active monitoring, PfR would see the MPLS link latency worse than your VPN backup (to same destination), and when it does, juggle traffic flows.
No, don't have experience with using PfR's inbound control (at the time I set it up, most of my devices only supported OER, and inbound isn't an option with OER).
Also cannot say what's typical "real world". I can say, when I setup "my" OER/PfR, our network monitoring section complained almost all our WAN performance problems disappeared.  (Laugh - we then had to work out how to "see" WAN performance problems in spite of OER/PfR.)

Similar Messages

  • How to configure multiple outgoing interfaces + NAT + PfR

    Hello,
    I have the following config running on Cisco2851.
    Five interfaces (four ADSL and one LAN 10Mb/s) connected to Internet using pppoe.
    Local policy is used to make working route tracking.
    The PfR also configured to load balance traffic coming from LAN to Internet.
    PAT is also configured with "oer" keyword at the end of string to not relocate working translations.
    But the router is not performing good. :-(
    After investigation I found that the selection of the exit interface and setting source ip for
    NAT is not synchronized. The provider's router just drops the incoming packet due to uRPF check.
    Also, the selection of the exit interface is not PFR aware (mode select-exit best) during
    NAT session setup, and router selects one of the possible exit interfaces randomly.
    I have two questions:
    1. How to make synchronization of NAT and Routing to build matching pair of Out_IP=Out_Interface and make my setup working?
    2. How to select the less loaded interface during setup of NAT phase and Routing phase and really involve PfR?
    Actually, these two questions is just my one requirement: during setup of NAT session, I need
    to find less loaded interface (PfR should check current rx/tx load), select it, and keep it untouched.
    Thanks,
    Sergey
    Config:
    version 15.1
    service tcp-keepalives-in
    service tcp-keepalives-out
    service timestamps debug datetime msec
    service timestamps log datetime msec
    service password-encryption
    hostname bif
    boot-start-marker
    boot system flash:c2800nm-adventerprisek9-mz.151-4.M8.bin
    boot-end-marker
    enable secret 5 $1$3ggj$huERPVt0luOX6qo6
    no aaa new-model
    crypto pki token default removal timeout 0
    dot11 syslog
    no ip source-route
    ip cef
    no ip domain lookup
    ip domain name zzz.mgm
    no ipv6 cef
    multilink bundle-name authenticated
    key chain PFR
     key 0
      key-string 7 107E2F2B
    voice-card 0
    pfr master
     logging
     border 192.168.254.254 key-chain PFR
      interface Dialer5 external
      interface Dialer4 external
      interface Dialer3 external
      interface Dialer2 external
      interface Dialer1 external
      interface GigabitEthernet0/0 internal
     mode select-exit best
    pfr border
     logging
     local Loopback0
     master 192.168.254.254 key-chain PFR
    license udi pid CISCO2851 sn FCZ0929
    username se privilege 15 secret 5 $1$DUbm$RuZKP8X.19uBtm21
    username ru privilege 15 secret 5 $1$1V.h$iotp/bjhUg4ho93d
    redundancy
    ip ssh version 2
    track 1 ip sla 1 reachability
     delay down 30 up 15
    track 2 ip sla 2 reachability
     delay down 30 up 15
    track 3 ip sla 3 reachability
     delay down 30 up 15
    track 4 ip sla 4 reachability
     delay down 30 up 15
    track 5 ip sla 5 reachability
     delay down 30 up 15
    interface Loopback0
     ip address 192.168.254.254 255.255.255.255
    interface GigabitEthernet0/0
     description ### LAN ###
     ip address 192.168.68.1 255.255.255.0
     no ip redirects
     no ip proxy-arp
     ip flow ingress
     ip nat inside
     ip virtual-reassembly in
     duplex auto
     speed auto
    interface GigabitEthernet0/1
     description ### WDSL link to Dialer 5 ###
     no ip address
     duplex auto
     speed auto
     pppoe enable group global
     pppoe-client dial-pool-number 5
    interface ATM0/0/0
     description ### DSL link 1 to Dialer 1 ###
     no ip address
     no atm ilmi-keepalive
     shutdown
     pvc 1/32
      pppoe-client dial-pool-number 1
    interface ATM0/1/0
     description ### DSL link 2 to Dialer 2 ###
     no ip address
     no atm ilmi-keepalive
     pvc 1/32
      pppoe-client dial-pool-number 2
    interface ATM0/2/0
     description ### DSL link 3 to Dialer 3 ###
     no ip address
     no atm ilmi-keepalive
     pvc 1/32
      pppoe-client dial-pool-number 3
    interface ATM0/3/0
     description ### DSL link 4 to Dialer 4 ###
     no ip address
     no atm ilmi-keepalive
     pvc 1/32
      pppoe-client dial-pool-number 4
    interface GigabitEthernet1/0
     description ### Virtual interface to NME-16ES-1G-P ###
     ip address 192.168.254.253 255.255.255.254
    interface Dialer1
     description ### Dialer for line 1 ###
     bandwidth 224
     bandwidth receive 1728
     ip address negotiated
     ip mtu 1492
     ip nat outside
     ip virtual-reassembly in
     encapsulation ppp
     ip tcp adjust-mss 1452
     load-interval 30
     dialer pool 1
     ppp authentication chap callin
     ppp chap hostname
     ppp chap password
     no cdp enable
    interface Dialer2
     description ### Dialer for line 2 ###
     bandwidth 224
     bandwidth receive 1728
     ip address negotiated
     ip mtu 1492
     ip flow ingress
     ip nat outside
     ip virtual-reassembly in
     encapsulation ppp
     ip tcp adjust-mss 1452
     dialer pool 2
     ppp authentication chap callin
     ppp chap hostname
     ppp chap password
     no cdp enable
    interface Dialer3
     description ### Dialer for line 3 ###
     bandwidth 224
     bandwidth receive 1728
     ip address negotiated
     ip mtu 1492
     ip flow ingress
     ip nat outside
     ip virtual-reassembly in
     encapsulation ppp
     ip tcp adjust-mss 1452
     dialer pool 3
     ppp authentication chap callin
     ppp chap hostname
     ppp chap password
     no cdp enable
    interface Dialer4
     description ### Dialer for line 4 ###
     bandwidth 224
     bandwidth receive 1728
     ip address negotiated
     ip mtu 1492
     ip flow ingress
     ip nat outside
     ip virtual-reassembly in
     encapsulation ppp
     ip tcp adjust-mss 1452
     dialer pool 4
     ppp authentication chap callin
     ppp chap hostname
     ppp chap password
     no cdp enable
    interface Dialer5
     description ### Dialer for WDSL line ###
     bandwidth 10000
     bandwidth receive 10001
     ip address negotiated
     ip mtu 1492
     ip flow ingress
     ip nat outside
     ip virtual-reassembly in
     encapsulation ppp
     ip tcp adjust-mss 1452
     load-interval 30
     dialer pool 5
     ppp authentication chap callin
     ppp chap hostname
     ppp chap password
     no cdp enable
    ip local policy route-map LOCAL-PBR
    no ip forward-protocol nd
    no ip http server
    no ip http secure-server
    ip nat inside source route-map NAT1 interface Dialer1 overload oer
    ip nat inside source route-map NAT2 interface Dialer2 overload oer
    ip nat inside source route-map NAT3 interface Dialer3 overload oer
    ip nat inside source route-map NAT4 interface Dialer4 overload oer
    ip nat inside source route-map NAT5 interface Dialer5 overload oer
    ip nat inside source static tcp 192.168.68.160 22 $$$Dialer5-IP$$$ 2222 extendable
    ip nat inside source static tcp 192.168.68.160 22 $$$Dialer2-IP$$$ 2222 extendable
    ip nat inside source static tcp 192.168.68.160 22 $$$Dialer3-IP$$$ 2222 extendable
    ip nat inside source static tcp 192.168.68.160 22 $$$Dialer4-IP$$$ 2222 extendable
    ip nat inside source static tcp 192.168.68.230 21 $$$Dialer1-IP$$$ 21 extendable
    ip nat inside source static tcp 192.168.68.160 25 $$$Dialer1-IP$$$ 25 extendable
    ip nat inside source static tcp 192.168.68.22 143 $$$Dialer1-IP$$$ 143 extendable
    ip nat inside source static tcp 192.168.68.22 443 $$$Dialer1-IP$$$ 443 extendable
    ip nat inside source static tcp 192.168.68.160 22 $$$Dialer1-IP$$$ 2222 extendable
    ip route 0.0.0.0 0.0.0.0 Dialer1 track 1
    ip route 0.0.0.0 0.0.0.0 Dialer2 track 2
    ip route 0.0.0.0 0.0.0.0 Dialer3 track 3
    ip route 0.0.0.0 0.0.0.0 Dialer4 track 4
    ip route 0.0.0.0 0.0.0.0 Dialer5 track 5
    ip sla 1
     icmp-echo 8.8.8.8 source-ip $$$Dialer1-IP$$$
     timeout 1000
     frequency 5
    ip sla schedule 1 life forever start-time now
    ip sla 2
     icmp-echo 8.8.8.8 source-ip $$$Dialer2-IP$$$
     timeout 1000
     frequency 5
    ip sla schedule 2 life forever start-time now
    ip sla 3
     icmp-echo 8.8.8.8 source-ip $$$Dialer3-IP$$$
     timeout 1000
     frequency 5
    ip sla schedule 3 life forever start-time now
    ip sla 4
     icmp-echo 8.8.8.8 source-ip $$$Dialer4-IP$$$
     timeout 1000
     frequency 5
    ip sla schedule 4 life forever start-time now
    ip sla 5
     icmp-echo 8.8.8.8 source-ip $$$Dialer5-IP$$$
     timeout 1000
     frequency 5
    ip sla schedule 5 life forever start-time now
    access-list 100 permit ip any any
    access-list 101 permit ip host $$$Dialer1-IP$$$ any
    access-list 102 permit ip host $$$Dialer2-IP$$$ any
    access-list 103 permit ip host $$$Dialer3-IP$$$ any
    access-list 104 permit ip host $$$Dialer4-IP$$$ any
    access-list 105 permit ip host $$$Dialer5-IP$$$ any
    access-list 199 permit ip 192.168.68.0 0.0.0.255 any
    route-map LOCAL-PBR permit 10
     match ip address 101
     set interface Dialer1
    route-map LOCAL-PBR permit 20
     match ip address 102
     set interface Dialer2
    route-map LOCAL-PBR permit 30
     match ip address 103
     set interface Dialer3
    route-map LOCAL-PBR permit 40
     match ip address 104
     set interface Dialer4
    route-map LOCAL-PBR permit 50
     match ip address 105
     set interface Dialer5
    route-map LOCAL-PBR permit 100
     match ip address 100
     set global
    route-map NAT3 permit 10
     match ip address 199
     match interface Dialer3
    route-map NAT2 permit 10
     match ip address 199
     match interface Dialer2
    route-map NAT1 permit 10
     match ip address 199
     match interface Dialer1
    route-map NAT5 permit 10
     match ip address 199
     match interface Dialer5
    route-map NAT4 permit 10
     match ip address 199
     match interface Dialer4
    control-plane
    mgcp profile default
    line con 0
    line aux 0
    line 66
     no activation-character
     no exec
     transport preferred none
     transport input all
     transport output lat pad telnet rlogin lapb-ta mop udptn v120 ssh
    line vty 0 4
     session-timeout 15
     login local
     transport input all
    line vty 5 15
     session-timeout 15
     login local
     transport input all
    scheduler allocate 20000 1000
    end
    Show ip route:
    sh ip route 0.0.0.0
    Routing entry for 0.0.0.0/0, supernet
      Known via "static", distance 1, metric 0 (connected), candidate default path
      Routing Descriptor Blocks:
        directly connected, via Dialer5
          Route metric is 0, traffic share count is 1
      * directly connected, via Dialer3
          Route metric is 0, traffic share count is 1
        directly connected, via Dialer4
          Route metric is 0, traffic share count is 1
        directly connected, via Dialer2
          Route metric is 0, traffic share count is 1
    Log:
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Stateful Inspection(5), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Ingress-NetFlow(21), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Virtual Fragment Reassembly(25), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Access List(31), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Virtual Fragment Reassembly After IPSec Decryption(39), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, MCI Check(80), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=192.168.68.2 (GigabitEthernet0/0), d=8.8.4.4, len 66, input feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, TCP Adjust MSS(82), rtype 0, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: FIBipv4-packet-proc: route packet from GigabitEthernet0/0 src 192.168.68.2 dst 8.8.4.4
    *Apr 16 07:04:18.103: FIBfwd-proc: Default:0.0.0.0/0 process level forwarding
    *Apr 16 07:04:18.103: FIBfwd-proc: depth 0 first_idx 3 paths 4 long 0(0)
    *Apr 16 07:04:18.103: FIBfwd-proc: try path 3 (of 4) v4-ap-Dialer5 first short ext 0(-1)
    *Apr 16 07:04:18.103: FIBfwd-proc: v4-ap-Dialer5 valid
    *Apr 16 07:04:18.103: FIBfwd-proc: Dialer5 no nh type 3  - deag
    *Apr 16 07:04:18.103: FIBfwd-proc: ip_pak_table 0 ip_nh_table 65535 if Dialer5 nh none deag 1 chg_if 0 via fib 0 path type attached prefix
    *Apr 16 07:04:18.103: FIBfwd-proc: packet routed to Dialer5 p2p(0)
    *Apr 16 07:04:18.103: FIBipv4-packet-proc: packet routing succeeded
    *Apr 16 07:04:18.103: FIBfwd-proc: ip_pak_table 0 ip_nh_table 65535 if Dialer5 nh none uhp 1 deag 0 ttlexp 0
    *Apr 16 07:04:18.103: FIBfwd-proc: sending link IP ip_pak_table 0 ip_nh_table 65535 if Dialer5 nh none uhp 1 deag 0 chgif 0 ttlexp 0 rec 0
    *Apr 16 07:04:18.103: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Post-routing NAT Outside(24), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, Stateful Inspection(27), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.103: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.103:     UDP src=61183, dst=53, CCE Post NAT Classification(38), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53, Firewall (firewall component)(39), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53, TCP Adjust MSS(50), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53, NAT ALG proxy(55), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53, Post-Ingress-NetFlow(68), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53, Dialer idle reset(84), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), len 66, output feature
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53, Dialer idle reset(85), rtype 1, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Dialer5), g=8.8.4.4, len 66, forward
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53
    *Apr 16 07:04:18.107: IP: s=$$$Dialer4-IP$$$ (GigabitEthernet0/0), d=8.8.4.4 (Virtual-Access3), len 66, sending full packet
    *Apr 16 07:04:18.107:     UDP src=61183, dst=53

    hi,is this question is ok?
    if you forget do this config like below:
    pfr master
    learn
    delay
    throughput
    periodic-interval 3
    monitor-period 1
    pfr master
    delay threshold 200
    jitter threshold 50 
    mode route control 
    mode monitor passive
    mode select-exit best 
    i will do like this,four ADSL connect a switch ,this switch connect a router 2911(with data license)
    at 2911 do four  pppoe
    i want to load balance at this four adsl.

  • How to handle the global buttons in PFR

    Dear friends,
    i want to handle the global buttons in Process From Request
    the requirement is in standard page , we have created one custom link as global button
    when we click that link we are calling to previous page..now we want handle this global link in PFR
    how to go ahead?? please it is very urgent
    Thanks
    krish.

    Hi,
    We can get handle to global buttons using this:
    OAPageLayoutBean page = pageContext.getPageLayoutBean();
    page.prepareForRendering(pageContext);
    OAGlobalButtonBarBean buttons = (OAGlobalButtonBarBean)page.getGlobalButtons();
    //OAF automatically assigns global buttons to their corresponding function name
    OAGlobalButtonBean button = (OAGlobalButtonBarBean)buttons.findIndexedChildRecursive("<FUNCTION_NAME>");
    You can catch event for your global button in PFR and write the logic there.
    --Sushant                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • Key Flex Field Value in PFR

    Hello,
    I have a table, in which one column in KFF.
    How can i get this value in PFR?
    I tried doing
    1. OATableBean tb = (OATableBean)webBean.findChildRecursive("SplitLineTabRN");
    OAKeyFlexBean kfb = (OAKeyFlexBean)tb.findIndexedChildRecursive("LocCon");
    and
    2. OAKeyFlexBean kfb = (OAKeyFlexBean)webBean.findIndexedChildRecursive("LocCon");
    Both case kfb is null.
    Please help.

    Hi,
    right click on the page and check view source, get the id of the bean. i know it is not a stright solution, but it works

  • Coloring table row using css in pfr

    Hi all,
    I am using classic table region for loading the records.After loading in PFR using table multiselection selecting one or more than one row then coloring should happen for those selected rows.
    In pfr we cann't change bean properties.
    Give ur idea.
    Thanks,

    Hi,
    Go through these threads...
    Can we colour the rows in the column of a table
    Changing Color of a value in a column
    Thanks,
    Gaurav

  • How can i pass a variable's value from PR to PFR

    Dear all,
    hope you are fine.
    i would like to pass a variable's value from PR to PFR.
    how can i do that.
    please suggest.
    in PR:
    String transactionId = (String) vo_trans.first().getAttribute("Getnexttrans");
    i would like to get this value to PFR.

    Mofizur,
    You can achieve the same using Session variable.
    If u are not executing the VO after PR. Then you will be able to get the same value as u are using in PR
    String transactionId = (String) vo_trans.first().getAttribute("Getnexttrans");
    Note - You have a few of the threads left open, mark it as answered if solved.
    Regards,
    Gyan

  • PFR Updated a DFF value in VO but doesn't change the value on the page

    I am in an R12 instance and lets just say I have 2 items in the same VO which I am wanting to update within the ProcessFormRequest. For this case lets just say i want both of the fields to be updated with the string "test". One of the attributes is attached to a descriptive flex field and the other is not. Both of them are displayed within the same region and start off null. What i want to happen is for both of these fields to start off null and once the PFR fires i would like them both to have a value of "test". I should note that both fields do not have any LOVs assigned to them. Right now what happens is when the process form request fires the field not to the DFF is updating correctly but the one tied to the DFF is not. I verified that the DFF field has the correct value for itself in the VO by displaying the value directly from the VO with debug statements right after the setAttribute command was triggered.
    Here is the code for the main controller's PFR:
       super.processFormRequest(pageContext, webBean);
       OAApplicationModule am = pageContext.getApplicationModule(webBean);
       OAViewObject myVO = (OAViewObject)am.findViewObject("the VOs Name");
       OARow row = (OARow)myVO.getCurrentRow();
       row.setAttribute("FieldNotTiedtoDFF","test"); *<--works, the field is then set to test, item not tied to DFF*
       row.setAttribute("Attribute1","test"); *<--not working and stays blank and doesn't get refreshed to test, item tied to the DFF*
    The same thing occurs when i try:
       OAMessageTextInputBean nonDffField = (OAMessageTextInputBean)webBean.findChildRecursive("FieldNotTiedtoDFF");
       nonDffField.setValue(pageContext,"test");
       OAMessageTextInputBean DffField = (OAMessageTextInputBean)webBean.findChildRecursive("FlexID1");
       DffField.setValue(pageContext,"test");
    Any suggestions on why the field for the DFF isn't updated on the user's screen?

    Hi,
    Just try redirecting to the same page at the end of ProcessFormRequest.
    Regards,
    Guru Krishnan V.

  • Why are there symmetry differences on Ipad or Windows ? ( for sketchbook express)

    On windows (surface 3) i can select x and y symmetry and on Ipad version only one axis symmetry. Is there a way to have both axis on Ipad?
    will the pro version on ipad have it?

    Sketchbook Express and Pro are actually made by Autodesk, not Adobe.
    That being said, Sketchbook Pro is a great app; I've been using it for a month or so, since Adobe took the ol' "*shrug* maybe we'll get around to it if we feel like it" line with regards to development of an Android version of Sketch.
    Since this is an Adobe forum, you'd probably be better off asking over at Autodesk.

  • Draw Live in Symmetry with Reflect Effect

    There was a thread on the MAC forum July of last year (http://www.adobeforums.com/webx/.59b5e982)about drawing in symmetry using the reflect effect set to a copy of -1- in the dialog box.
    I am unable to draw with this LIVE. I can only apply the effect after drawing.
    What am I doing wrong?

    This is a sorta typical example:
    Maybe it's a little harder than average but to -me-, AI should have some sort of 'edge detection' to convert this to about two dozen straight 'lines'.
    But what it -does- is either turn it into a mass of paisley swirls -or- if I use the 'photo' setting, the trace looks mostly like the original, BUT it's created almost 1 path for every frickin' pixel.
    What I end up doing---if I really need it---is to trace over it with the mouse, but I confess I'm a LOUSY 'pen drawer' so it often goes awry. Most often? I make a print-out, trace it on paper with a sharpie, then re-scan it into AI. And THEN it will 'Live Trace' OK... seems like a total Rube Goldberg but AI seems to -need- that sharpie.
    So... in lieu of going to pen boot camp, I was -hoping- that this was just operator error.
    Anyone?
    ---JC

  • Is it possible to call PFR in PR?

    Hi Experts,
    Can you please clarify is it possible to call PFR in PR?
    I have a requirement based on this answer.
    It can be very much appreciated.
    Regards,
    Murali

    Hi Idris,
    Thanks for the reply.
    I have a requirement in iexpenses. When we are creating expenses we have to enter expense lines. Based on expense type, details page opens with Mulidestinations checkbox. According to seeded functionality when the check box checked Multi locations table opens. Here i need to display check box checked automatically when page gets loaded. After entering locations data and clicks on return button the details get stored and it navigates to previous lines page.
    I have achieved that check box checked. But when i click on return it is saying that Error in inserting data.
    In seeded page it is getting done with Navigationutility.forwardpage('Expensedetailspage',Hashmap).
    How can i forward the values to previous page?
    Regards,
    Murali

  • I am getting Render Filter error - Error in Symmetry initialization script: line 43: Variable name  expected. PLEASE HELP.

    Hi all,
    I have quit Creative Cloud. Checked for updates.
    Only activity that could have affected system files was to uninstall the CC apps, keeping the CC 2014 apps only.
    I need to use the render flame filter but I get the following error
    Error in Symmetry initialization script: line 43: Variable name expected
    I get this error with render tree and render frame.
    A response will be appreciated
    Thanks

    There is a "Symmetry Fill.jsx" script is Photoshop CC 2014 Preset Deco folder along with "Picture Frame.jsx" and "Tree.jsx" each of those scripts line 43 is a comment not executable code.  There are other scripts in that folder related the those rendering scripts could your folder have been corrupted somehow. I don't think uninstalling CC would have corrupted that folder for the doler fi not exist when CC was installed.
    Look at the line 43 in the files, Here is what I see on my Windows 7 Pro CC 2014 system

  • PFR() not executing properly

    Hi All
    I am trying to displaying records on table on custom region on seeded page.
    when I write following code in ProcessRequest()
    then it works fine but when I write same code in PFR()
    on clicking GO button then its not working
    It not showing any record
    even I have checked ID of GO button
    OAApplicationModule am = pageContext.getRootApplicationModule();
         OAViewObject v = (OAViewObject)am.findViewObject("xxUnApproveVO");
            if(v==null)
                v = (OAViewObject)am.createViewObject("xxUnApproveVO","xxx.oracle.apps.irc.vacancy.server.xxUnApproveVO");
                v.executeQuery();

    Hi Gyan
    Thanks for reply
    Yeah I have checked MY GO button is working fine
    I have checked it using following code
    if(pageContext.getParameter("GO1") == null){return;}
    OAApplicationModule am = pageContext.getRootApplicationModule();
    pageContext.putDialogMessage(new OAException("one"));
        OAViewObject v = (OAViewObject)am.findViewObject("xxUnApproveVO");
         pageContext.putDialogMessage(new OAException("two"));
        if(v==null)
             v = (OAViewObject)am.createViewObject("xxUnApproveVO","xxxc.oracle.apps.irc.vacancy.server.xxUnApproveVO");
             v.executeQuery();
             int count= v.getFetchedRowCount();
         pageContext.putDialogMessage(new OAException("three"+count));
      }it gives an error at the top of page
    Error
    1. one
    2. two
    3. three
    count 0
    Edited by: HA on Feb 11, 2011 6:43 AM

  • Control Query in PFR of LOV

    Hi All,
    I would like the LOV to take the query that I add programmatically. Basically, I am setting where clauses dynamically.
    This works fine when I set the programmatic query to true and add it in the process Request usind Criteria Items.
    But the problem again occurs when we come back to the LOV page and click on Go button there. This part is being controlled in pfr, but my query does not get appended to the LOVVO query that I created dynamically as in process Request.
    Please let me know how to make the LOV to take my query part that is added programmatically in process form request.
    Thanks,
    Padmaja

    Hi All,
    Thanks for your suggestions and quick responses.
    1. The issue still persists.
    2. Disable Validation is set to True for my LOV.
    3. Answer to Ram's point:
    The pseudologic for where clause thats being added is
    in LOVCO PR:
    if (vo != null) {
    if (condition1)
    set WhereClause1
    else
    set WhereClause2
    Its working perfect when I give the value in base page and click on LOV Torch.
    But once I am in the LOV page, we have search criteria and search text there. Once I change the value there or simply click on Go (without even changing value in search text), I see that the control goes to process form request. There I tried to attach my programmatic where clause just to make sure that the data appears conditionally. But here when the user clicks on Go button in the LOV page, the framework does not take the dynamic query from CO.
    I am not sure if my approach is correct or is there any simpler way of doing it.
    Thanks,
    Padmaja

  • Symmetry Question, Zig-Zag Effect

    I'm working with the Zig-Zag effect and have noticed an anomaly, or not the result I expected. The effect seems to be symmetrical except on one area of the underlying path at one anchor point. Relative and Absolute both yield a non-symmetrical result. Is there a way to get complete symmetry with this effect? I'm working on some snowflakes to import into After Effects and would like for them to be symmetrical.
    Any help is much appreciated. Thanks, Bob

    There are a lot of unobservant designers out there.
    This one came from Wiki:

  • Performance Routing (PfR) with single router, dual ISP and load balancing

    It looks like PfR can do this but I have only found information about this feature which will start using ISP2 once ISP1 reaches 75% usage. But this is not load balancing.
    Can we accomplish load balancing utilizing a single router with dual ISPs using this PfR feature? 
    Or do we have to use another feature?
    thank you in advance

    Disclaimer
    The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.
    Liability Disclaimer
    In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.
    Posting
    I'm rusty using OER/PfR, but I recall it could load balance two links on same router.  The issue, I also recall, if doing BGP, OER/PfR has to detect a load imbalance, and there's a certain difference allowance, and OER/PfR takes some time to decide, so depending on actual traffic, it might not be obvious it's working.  If doing BGP, there's a hidden command (which I don't recall is) that will load balance the two links on the same router; then you use OER/PfR to dynamically refine the balance load.

Maybe you are looking for