VTP revision number and VLAN database updates

Hi - Theoretically, is the following possible ?
We have an established network on VTP domain say - CORP where we have a core switch performing the VLAN/VTP updates.
Someone plugs in a rogue switch to the network - say configured for a different VTP domain TEST, or maybe just a default undefined VTP domain. If the VTP Revision number of the rogue switch is higher than the Core Switch(CORP) - can the rogue switch wipe out the VLANs on CORP ?
My understanding from VTP is that the server and client need to be on the same domain for updates to occur flowing from the Server to the Client. But, also read somewhere that VTP revision is more something that needs to be a watch out for.
In question would be a CAT 6506 being the Server, and the roque being any switch - even a Cisco 2940 which we might typically user for conference rooms.
pls advise
thanks in advance

A switch if not configured for any vtp domain, defaulting to null, when plugged into a life network, it will join the domain that it learns about via vtp.
Also, a switch in vtp client mode, eventhough is not possible to configure vlan info on it, but will still propagate it's vlan d/b info via vtp. Therefore, if a client has a higher revision number then the one in the life network, therefore it will still wipe out the current VLANs in the life network replacing it with whatever that it has in it's own database.
There are 3 ways to avoid this:
1. Configure vtp mode of switch fr client to transparent, then switch it back to client mode. This will reset the vtp rev. back to 0.
2. Configure it to a different vtp domain, then switch it back. This will also reset the vtp rev. back to 0.
3. Configure ur switch uplink as an access port. VTP info will only propagate through trunks.
HTH.

Similar Messages

  • Synchrounous Processing and Synchrounous database updates - BDC

    Hi,
    I like to know the difference between Synchrounous Processing and Synchrounous database updates In BDC, I have read many threads regarding the same but I didn't find anything which explains my query. Please explain me with an example.
    Thanks,
    Narayan

    Hi,
    Synchronus method:
    In synchronus method until one record process takes place into database next record will not process.
    Incase if there is any change in the table all the related tables will be changed accordingly and then
    sy-subrc will be returned. So, in All synchronous update the sy-subrc is set to 0 only when the particular
    transaction is executed and also the changes have done to the database.
    Asynchronus method:
    In asynchronus immedate updation of data into database table.
    In case if there is any change in the table the sy-subrc will be immediately returned and then the related tables will be updated.
    In asynchronous even if the related tables are not updated the sy-subrc will still be returned as 0. i.e.
    the sy-subrc is set to 0 if the transaction is executed without any fail not the database changes.
    I hope it helps.
    Thansk,
    Archana

  • V1 and V2 database updates???

    Hi...
    can anyone pl give me idea abt V1 and V2 database updates???
    and diffence in b/w them...

    Hi,
    Refer this:
    V1 and V2 Update Modules
    An update is divided into different modules (see also Update Request). Each module corresponds to an update function module.
    There are two types of module.
    The SAP System makes a distinction between primary, time-critical (V1) and secondary, non-time-critical (V2) update modules. The system also supports collective runs for function modules that are used on a regular basis.
    This distinction allows the system to process critical database changes before less critical changes.
    V1 modules describe critical or primary changes; these affect objects that have a controlling function in the SAP System, for example order creation or changes to material stock.
    V2 modules describe less critical secondary changes. These are pure statistical updates, for example, such as result calculations.
    The V1 modules are processed consecutively in a single update work process on the same application server. This means that they belong to the same database LUW and can be reversed. Furthermore, V1 updates are carried out under the SAP locks of the transaction that creates the update (see  The SAP Lock Concept). This ensures that the data remains consistent; simultaneous changes to the objects to be updated are not possible.
    All V2 updates are carried out in a separate LUW and not under the locks of the transaction that creates them. If your SAP System contains a work process for V2 updates, these are only carried out in this work process. If this is not the case, the V2 components are processed by a V1 update process.
    All V1 modules of an update must be processed before the V2 modules.
    Let us assume that a transaction makes planning changes to a material and balance sheet, and updates two sets of statistics.
    Each of these changes is represented by means of an update module (call update function module) in the update request - the two planning changes by a V1 update module (time critical), and the statistical changes by a V2 update module (less critical). (The V1 modules have priority, although the V2 modules are usually also processed straight away).
    Jogdand M B

  • VTP (revision numbers) and one client not getting updates

    Hello.
    Somewhere along the line one of our switches (3750x) got messed up. Once they were finally configured about 6 months ago we never touched them again.
    I noticed yesterday when I created a new vlan it was not getting populated to one of our switches. For some reason I did not notice that the domain name on the switch not receiving updates was not our domain.
    So I switched the domain on this switch to the correct domain and it still does not show any updates and also has a revision # of 7.
    So on this switch I then unplugged all trunk ports and did "vtp mode transparent". I then switched it back to "vtp mode client vlan".
    It still showed revision 7.
    So I tried "vtp domain bogus" and "vtp mode transparent" and then did "vtp domain mydomain" and "vtp mode client vlan".
    It still showed revision 7.
    So I tried "vtp domain bogus" and "vtp mode transparent vlan" and then did "vtp domain mydomain" and "vtp mode client vlan".
    It still showed revision 7.
    I am at a loss as to how to fix this problem other than rebuilding the switch. I have a vtp server at revision 10 and two other switches also at revision 10 that are getting updates from the vtp server. Only one switch is not.  Please note that this one switch that is not working at some point did since it has all the vlans we created on our initial installation.
    -- Thanks
    // GOOD switch
    GOODSWITCH#show vtp status
    VTP Version capable             : 1 to 3
    VTP version running             : 3
    VTP Domain Name                 : mydomain
    VTP Pruning Mode                : Disabled
    VTP Traps Generation            : Disabled
    Device ID                       : 7426.acad.de00
    Feature VLAN:
    VTP Operating Mode                : Client
    Number of existing VLANs          : 15
    Number of existing extended VLANs : 6
    Maximum VLANs supported locally   : 1005
    Configuration Revision            : 10
    Primary ID                        : b838.61aa.5880
    Primary Description               : lab-desk
    MD5 digest                        : 0xB8 0x3E 0x2C 0xB7 0x85 0xB5 0x5D 0xA6
                                        0x4A 0x4E 0xFC 0x5E 0x5A 0xA1 0xAF 0xCC
    Feature MST:
    VTP Operating Mode                : Transparent
    Feature UNKNOWN:
    VTP Operating Mode                : Transparent
    // BAD switch
    BADSWITCH#show vtp status
    VTP Version capable             : 1 to 3
    VTP version running             : 3
    VTP Domain Name                 : mydomain
    VTP Pruning Mode                : Disabled
    VTP Traps Generation            : Disabled
    Device ID                       : 7426.acad.ee80
    Feature VLAN:
    VTP Operating Mode                : Client
    Number of existing VLANs          : 12
    Number of existing extended VLANs : 6
    Maximum VLANs supported locally   : 1005
    Configuration Revision            : 7
    Primary ID                        : b000.b4b0.f200
    Primary Description               : lab-desk
    MD5 digest                        : 0x7A 0x5C 0x2E 0x05 0xF2 0x80 0x6F 0x2F
                                        0x4E 0xE1 0x34 0x07 0x01 0x7F 0xB9 0x2B
    Feature MST:
    VTP Operating Mode                : Transparent
    Feature UNKNOWN:
    VTP Operating Mode                : Transparent

    Output from the switch NOT getting updates.
    // we have three trunk lines
    TenGigabitEthernet1/1/1
    TenGigabitEthernet1/1/2
    TenGigabitEthernet2/1/1
    // #show interfaces trunk
    Port        Mode             Encapsulation  Status        Native vlan
    Te1/1/1     on               802.1q         trunking      1
    Te1/1/2     on               802.1q         trunking      1
    Gi2/0/31    auto             n-802.1q       trunking      1
    Gi2/0/46    auto             n-802.1q       trunking      1
    Te2/1/1     on               802.1q         trunking      1
    Port        Vlans allowed on trunk
    Te1/1/1     1-4094
    Te1/1/2     1-4094
    Gi2/0/31    1-4094
    Gi2/0/46    1-4094
    Te2/1/1     1-4094
    Port        Vlans allowed and active in management domain
    Te1/1/1     1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Te1/1/2     1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Gi2/0/31    1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Gi2/0/46    1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Te2/1/1     1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Port        Vlans in spanning tree forwarding state and not pruned
    Te1/1/1     1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Te1/1/2     1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Gi2/0/31    6,12,100,125-126,129,1032,1096,1128,1160,1192,1224
    Gi2/0/46    1,6,12,100,125-127,129,1032,1096,1128,1160,1192,1224
    Te2/1/1     none
    show spanning-tree interface TenGigabitEthernet1/1/1
    Vlan                Role Sts Cost      Prio.Nbr Type
    VLAN0001            Root FWD 2         128.53   P2p
    VLAN0006            Root FWD 2         128.53   P2p
    VLAN0012            Root FWD 2         128.53   P2p
    VLAN0100            Root FWD 2         128.53   P2p
    VLAN0125            Root FWD 2         128.53   P2p
    VLAN0126            Root FWD 2         128.53   P2p
    VLAN0127            Root FWD 2         128.53   P2p
    VLAN0129            Root FWD 2         128.53   P2p
    VLAN1032            Root FWD 2         128.53   P2p
    VLAN1096            Root FWD 2         128.53   P2p
    VLAN1128            Root FWD 2         128.53   P2p
    VLAN1160            Root FWD 2         128.53   P2p
    VLAN1192            Root FWD 2         128.53   P2p
    VLAN1224            Root FWD 2         128.53   P2p
    show spanning-tree interface TenGigabitEthernet1/1/2
    Vlan                Role Sts Cost      Prio.Nbr Type
    VLAN0001            Desg FWD 2         128.54   P2p
    VLAN0006            Desg FWD 2         128.54   P2p
    VLAN0012            Desg FWD 2         128.54   P2p
    VLAN0100            Desg FWD 2         128.54   P2p
    VLAN0125            Desg FWD 2         128.54   P2p
    VLAN0126            Desg FWD 2         128.54   P2p
    VLAN0127            Desg FWD 2         128.54   P2p
    VLAN0129            Desg FWD 2         128.54   P2p
    VLAN1032            Desg FWD 2         128.54   P2p
    VLAN1096            Desg FWD 2         128.54   P2p
    VLAN1128            Desg FWD 2         128.54   P2p
    VLAN1160            Desg FWD 2         128.54   P2p
    VLAN1192            Desg FWD 2         128.54   P2p
    VLAN1224            Desg FWD 2         128.54   P2p
    show spanning-tree interface TenGigabitEthernet2/1/1
    Vlan                Role Sts Cost      Prio.Nbr Type
    VLAN0001            Altn BLK 2         128.109  P2p
    VLAN0006            Altn BLK 2         128.109  P2p
    VLAN0012            Altn BLK 2         128.109  P2p
    VLAN0100            Altn BLK 2         128.109  P2p
    VLAN0125            Altn BLK 2         128.109  P2p
    VLAN0126            Altn BLK 2         128.109  P2p
    VLAN0127            Altn BLK 2         128.109  P2p
    VLAN0129            Altn BLK 2         128.109  P2p
    VLAN1032            Altn BLK 2         128.109  P2p
    VLAN1096            Altn BLK 2         128.109  P2p
    VLAN1128            Altn BLK 2         128.109  P2p
    VLAN1160            Altn BLK 2         128.109  P2p
    VLAN1192            Altn BLK 2         128.109  P2p
    VLAN1224            Altn BLK 2         128.109  P2p

  • HT1414 How to save my number and picker before update

    How to save my number before download the new iOS

    What number?  What picker?
    If you mean your phone number, that has nothing to do with iOS or the updates.

  • Vtp version 2 and vtp domain

    switchA ---- B ---- C
    3 switches connected one-by-one
    A version2 server domain:cisco
    B version2 transparent domain:test
    C version2 client domain:cisco
    according to the documentation,we can conclude that C will learn vlan information from A. but the test is fail.
    why ?
    "Version-Dependent Transparent Mode-In VTP version 1, a VTP transparent switch inspects VTP
    messages for the domain name and version and forwards a message only if the version and domain
    name match. Because VTP version 2 supports only one domain, it forwards VTP messages in
    transparent mode without inspecting the version and domain name."

    The enhancements in VTP Version 2 are:
    Password
    Pruning
    & support for token rings.
    Config revision is same for v1, v2 & v3. though in version 3 its called database revision number.
    If devices on same domain share vtp messages, how is it decided which message is the more recent & whether to update the database or not. So config revision plays a major role in synchronisation of database.
    In your case, transparent switch is in a separate domain. So if it receives a message with different domain name in its header, switch B should reject because domain names doesnt match.
    As far as config revision, here is how it works:
    Each VTP instance is associated with a database revision number. The database revision number is incremented when the value of the database that is covered by the advertised checksum is modified.
    When a device receives a VTP advertisement from the same primary server for an instance in the same domain, the following occurs:
    •If the database revision number in the advertisement is less than that of the receiving device, the advertisement is ignored and a summary advertisement with the current revision number is transmitted on the trunk on which the original advertisement was received.
    •If the database revision number in the advertisement is the same as that of the receiving device, the following occurs:
    -If the checksum of the advertisement is exactly the same as the checksum of the current configuration known to the device, then no action is taken.
    -If the checksum of the advertisement is not exactly the same as the checksum of the current configuration known to the device, the device's configuration is unaffected, but the device indicates to the database manager that a configuration error condition has occurred.
    •If the database revision number in the advertisement is greater than that of the receiving device, and the advertisement's checksum and configuration information match, the receiving switch requests the exact subset of databases for which it is not up to date.
    Happy Diwali.

  • PO Revision Number mismatch between two systems

    Hello ,
    We are using the PRISM product integrated with OCI to Oracle Financials. Most of the POs gets generated from PRISM and flows thru OCI to the Oracle Purchasing module. We have a customization developed on the Oracle Purchasing side, which allows to update the PO ( Using the Oracle standard CANCEL API) on certain conditions. All such POs which have been updated in the Oracle Purchasing side are in out of SYNC with the PRISM POs. The Setup option "Archive On" was set to "Approval" and will be increasing the revision number and archives the versions to the standard Archive tables. Thus a document with 2 shipment lines (Revision 0) after the above said modifications will become revision 2 and PRISM still looks for Revision 0.
    Is there a quick way to deal with this situation, to maintain the archival history and to make both the products in SYNC. Increasing the PRISM version number to match with the Oracle POs version number is ruled out as it is more cumbersome.
    Can we manipulate the revision_num fields in PO main tables and in the PO Archive tables? What adverse affects we have if we change these versions ? Kindly advice.
    Thanks & Regards,
    Kiran Kesari

    How long has the primary farm been running? My first thought is you may have some orphaned (old) profiles from users who no longer have accounts and maybe haven't been completed cleaned up.
    Another thought: Are you syncing the same OUs in both farms?
    Do you have multiple authentication stores (Active Directory and a custom FBA provider for example)?
    Jason Warren
    @jaspnwarren
    jasonwarren.ca
    habaneroconsulting.com/Insights

  • "Hardcoding ini-File Settings" or "Automatic Revision Number with tortoise"

    Hi all,
    we use a SVN Repository with tortoise here at our company for version control.
    I'd like to get the revision number hardcoded into the Application (.exe version).
    I've allready found out, that there is some tool which can scan a directory and replaces a constant string in a file with the current revision number.
    (So I could automatically generate a .ini file with "Ver=...RevNr" as content)
    But I have no clue, how I can hardcode a file into the application with the labview builder.
    (I think of something like the .ico file, which is hardcoded into the application too)
    Has someone a sollution for this?
    thanks
    Mario Hirth
    Solved!
    Go to Solution.

    Hi Mario,
    I want to
    ensure you mean what I think by "get a revision number hard coded in an Application"
    When we build
    an executable we
    display a revision number on the front panel of our application and
    we also have a Help -> About menu that displays the revision number
    and other info like build
    date and time.
    If this is the sort of thing you want read on for some suggestions.
    I have a software release VI
    which contains control for things like build data, revision
    number etc. This
    Vi is shown from the help ->
    about menu and
    by an indicator on the
    front panel of
    our main application.
    Manual revision control
    Before every build
    you edit this
    Software Release VI
    putting in the
    details you want
    in the controls, set these to be the default values and save the VI. When you build the new
    values will then
    be displayed in
    your executable application.
    This method is
    simple to implement
    and test; it is a good way to start. You just treat this VI as any other from the
    point of view
    of your source
    control system.
    However this method
    has problems (people
    forgetting to do
    the change before
    the build, people not knowing the next
    number etc) and very
    soon you will
    want to move to an automatic revision control system.
     I use and strongly
    recommend the OpenG builder
    rather than the
    NI builder, for
    a number of reason.
    1) Good API,
    to help you script you builds automatically
    2) Good hooks
    for pre-build, post-build
    and call-backs VI
    integration. For example
    automatically zip up
    your application after
    a build an email to somebody.
    3) A built
    in revision system
    you should be
    able to get up and running without much trouble
    4) The Build
    configuration files are
    in a human readable format.
    In our system
    which using ClearCase
    and not SVN but the same principle applies, this
    is a simplified
    description.
     I have three
    basic files that
    are used to auto revision, an ini file
    that holds a record of all build for example - 001 29-Nov-2008, the software release
    VI mentioned above
    and I use the OpenG builder revision file to allow an easy built in hook in the OpenG builder.
    When a build
    starts a pre-build
    trigger runs a
    VI to look in the ini file to see what the next build number should
    be, it then adds in a new entry with this new build number and various other information we
    store, the .ini
    file is then saved. In our ClearCase system I used a special config specification to
    ensure that EVERYONE
    sees the same
    version of the
    ini file (the
    latest) and after
    it is checked
    in the latest
    is immediately updated
    with this new
    save version again
    so that EVERYBODY
    can see it.
    The pre-trigger VI then opens in edit mode the software release
    VI in edit mode and plugs into the various control and indicator
    the values read
    out from the ini. The version of the software release VI is then saved and closed and then the build start. I do not worry about keeping
    these edited versions
    of the Software
    Release VI in
    the config control
    system, in fact
    I throw them away after the build is finished, they are in effect only templates
    it is the ini file that
    counts.
     Hope this helps
    as a simple guide
    cheers  
    Dannyt
    Danny Thomson CLAD
    Sub10 Systems Ltd

  • SVN revision number in EAR file

    Hi everyone,
       Is there a way to have the SVN revision number displayed somewhere in our application? It would really help us and save time when trying to troubleshoot.
       Currently, we build an EAR file using a weblogic deployment descriptor. It could be nice if there was a way to query the SVN server to get the next revision number and store it in a property file inside the ViewController, then we could display it on the application.
       All suggestions are welcome.
       I'm using JDev 11.1.1.7
    Thanks,
    Guillaume

    Use FlexDeploy.
    Automate build process for Fusion web application | Flexagon FlexDeploy for DevOps and Deployment Automation
    ADF | Flexagon FlexDeploy for DevOps and Deployment Automation
    Flexagon FlexDeploy Deploy Oracle SOA, ADF, WebLogic, DevOps | Flexagon FlexDeploy for DevOps and Deployment Automatio…

  • JDBC to IDOC scenario and database update the idoc number

    Hi SDNers,
    I am willing to pull data from a database table to generate IDOC in SAP and want to update the  DATABASE with IDOC number in a single scenario.
    Kindly suggest ?
    REGARDS!!
    SSR

    Hi,
        Please keep in mind that the idoc no generated in PI will be different than the one generated in SAP...for idoc...
    the correlation between the idocs in both systems is the message id...
    HTH
    Rajesh

  • Updating policies and Policy Database or Policy Updates without server restart

    Hi again,
    I have implemented the flash access reference implementation server including setting up all example database tables (so we have a central database server).  I have started updating policies for the application "whitelist" features and have run into some questions below.
    The Protecting Content documentation states:
              "If your license server has access to a database for storing policies, you can retrieve the updated policy from the database and call LicenseRequestMessage.setSelectedPolicy()"
    This leads to two questions:
    1)  The reference implementation doesn't store any Policies in the database (it stores them on the filesystem in the Resources Directory).     I can not find any documentation or examples of how to "retrieve the updated policy from the database".     Can somebody please point me to an example or documentation on how to store policies in the database so I can simply LicenseRequestMessage.setSelectedPolicy()?
    2)  As the reference implementation stores policies on the disk I had to use policy update lists when I whitelisted an AIR app.     However, the reference server did not honor the policy update list till I restarted the flash access reference server.      How can I notify the flash access server of the change to the update policy list without restarting the server?
    Thank you,
    -R

    Hello,
    Please see my answers below.
    Answer 1>
    If you want to store the binary representation of the policy in the database, you can invoke Policy.getBytes() and store the returned byte[] as a blob in the database. For details on how to store such binary data in a database, you should consult the documentation for you database. Then, to rebuild a policy that had been stored in a database, you can obtain the byte[] stored in the database, and invoke new Policy(byte[]) with it to reconstruct that policy instance.
    See the following javadocs:
          * Retrieves an encoded byte array representation of the policy.
          * <p>If this <code>Policy</code> was created from an empty constructor, the revision number
          * will be <code>1</code>.  If this was an existing policy and changes were made to the policy,
           * the revision number will be incremented by one. Otherwise, the revision number will not change.</p>
          * <p>The validity of the policy is first checked before encoding into a byte array.  Encoding will fail
          * if {@link #checkValidity()} throws an exception.</p>
           * @return A serialized representation of the policy.
          * @throws PolicyModificationException The <code>Policy</code> cannot be serialized because it was created with a newer version and was modified.
          * @throws PolicyException The <code>Policy</code> is missing required fields or contains conflicting entries.
          * @throws EncodingException Unable to encode the <code>Policy</code> to a byte array.
          public byte[] getBytes() throws PolicyException, EncodingException;
          * This constructor parses an existing policy from the given byte array.
           * @param policy The policy from which to construct this <code>Policy</code>.
          * @throws EncodingException Unable to parse the byte array into a <code>Policy</code>.
          * @throws PolicyException The <code>Policy</code> is missing required fields or contains conflicting entries.
          public Policy( byte[] policy ) throws PolicyException, EncodingException;
    Answer 2>
    In order to implement automatic configuration updates of policy update lists on the flash access server, you will need to tweak the Reference Implementation code, to monitor the file update state and re-load the PolicyUpdateList if it changes. The code snippet below, taken from the com.adobe.flashaccess.refimpl.util.ParamsReader.buildHandlerConfiguration() method, should serve as an example of how the PolicyUpdateList is loaded and then set on the HandlerConfiguration instance for it to take effect for a particular license acquisition request. In the case of the reference implementation, this code (below) is only invoked once, during server initialization. That is why a server restart is necessary for subsequent changes to take effect. However, nothing prevents this code form being invoked elsewhere, and that implementation is entirely upto the customer, to achieve the desired outcome.
          PolicyUpdateList pul = PolicyUpdateListFactory.loadPolicyUpdateList(pulInputStream);
          if (pul != null)
                X509Certificate issuerCert = null;
                if (hsmEnabled)
                      issuerCert = getHSMCertificate(props, hsmUtils, "RevocationList.verifySignature.X509Certificate");
                else
                      String pulSignatureCertFile = props.getProperty("RevocationList.verifySignature.X509Certificate");
                      if (pulSignatureCertFile != null)
                            InputStream pulSignerInputStream = new FileInputStream(resourcesDir + pulSignatureCertFile);
                            issuerCert = CertificateFactory.loadCert(pulSignerInputStream);
                if (issuerCert != null)
                      pul.verifySignature(issuerCert);
                      context.setPolicyUpdateList(pul);
    Regards,
    Safdar

  • Based on single Doc number Multiple line items update to in single Z database table

    Dear Frds,
    Based on single Doc number Multiple line items update to database table
    Example : Doc Num: Janu
    If users are using different doc number again the line items are modifying and replacing to new document Number . Pls Help me Screen attached as
    Like CS01 Transaction

    Dear Frds,
    Based on single Doc number Multiple line items update to database table
    Example : Doc Num: Janu
    If users are using different doc number again the line items are modifying and replacing to new document Number . Pls Help me Screen attached as
    Like CS01 Transaction

  • Revision number in sales order and scheduling agreement

    I want revision number in sales order as well as scheduling agreement. for this where we configure or 
    how will it come in VA01 as well as VA31.
    Regards

    Hi Amit,
    Its not hard to find this info at help.sap.com
    Sales Order
    Definition: Request from a customer to a company to deliver a defined quantity of products or provide a service at a certain time. The sales area that accepts the inquiry is responsible for completing the agreement.
    Scheduling Agreements
    Purpose
    A customer scheduling agreement is an outline agreement with the customer containing delivery quantities and dates. These are then entered as schedule lines in a delivery schedule. You can either create schedule lines when you create the scheduling agreement or you can create them later.
    You fulfill a scheduling agreement by creating the deliveries in the schedule as they become due. You process deliveries for a scheduling agreement in exactly the same way as you process a normal delivery. After you have carried out the delivery, the system updates the Delivered quantity field in the scheduling agreement item with the delivery quantity. The following graphic shows the document flow for scheduling agreements.
    Integration
    You would use this component if you had outline agreements with the customer that contained future delivery quantities of materials that would be sent at certain times within a fixed time period.
    If you work with scheduling agreements for the component supplier industry you also need to choose the "Electronic Data Interchange" (EDI) component.

  • CcBPM, Async Messages and database update performance

    We have several business processes defined and running in XI 3.0. Some are being invoked as web services.
    Our performance/scalability is extremely poor. We believe the problem is the database, which apparently is being updated at a phenomenal rate. The database disk I/O is exceptionally high, and has been tracked to writing to the database container/table files and tranaction logs. The database has been carefully tuned, and we are rushing to migrate the db to a higher capacity machine.
    It would seem, based on documentation, that the database updates are a result of the asynch message interfaces we are using through the business processes. 
    The first question is are we correct in the above statement?
    The second question is are the db updates being done under a transactional scope, if so what is the isolation level of the update, and can we change the isolation level?
    Third question, if the updates are due to the asynch message interfaces, can we use synch message interfaces and reduce the database work? If so, how?
    Finally,

    I don't think you'll find a documented general number of application variables you can have on a single server. But I think you could get away with 400 variables without any trouble.
    Where you might run into trouble, though, is when you have multiple concurrent requests trying to read and change these values. You'll have to ensure that you single-thread write access to these variables using CFLOCK.
    Dave Watts, CTO, Fig Leaf Software
    http://www.figleaf.com/
    http://training.figleaf.com/
    Fig Leaf Software is a Veteran-Owned Small Business (VOSB) on
    GSA Schedule, and provides the highest caliber vendor-authorized
    instruction at our training centers, online, or onsite.

  • NextnPrevious pages and database update

    Hi Folks,
    Am hoping someone can point me in the right direction on figuring this out...
    I have 120 individuals in the database with related fields. Instead of displaying 120 rows when I pull the data from the database, I've built Next/Previous pages for displaying them 30 to a page.
    Here's the thing: This is an admin section, pulling names and IDs and fields (text, radio buttons, dropdowns, etc.) for data entry, or rather, database update.
    So, after displaying 30 on the page you have a link on the bottom of the page to display the next 30. This page refreshes itself...
    Either I have to cache the update info from each page and put a submit button for updating on the last page or, submit each page (30 at a time) until each succeeding page is done, one at a time. See what I'm getting at? I think I'd rather be able to submit 30 at a time instead of trying to cache all the data as you move from page to page but am having a hard time trying to figure this out.
    I'm not sure what is best or just how to do the database insert/update since the Next/Previous CF code depends on the same page refreshing itself each time for the next pages.
    Also, the first page of this 'group of NextPrevious pages' is dependant on it's previous page of "select school", so that the first NextPrevious page (and following ones) displays the individuals from that particular school - 30 at a time.
    Can anyone point me in the right direction on this kind of database insert/update when used in conjunction with Next/Previous page links?
    Thanks!
    - ed

    Thank ya'll for the ideas...
    You know, before posting this I googled and googled and was surprised to find hardly anything addressing this. I would have thought it would be a fairly common way to perform edits on a large number of table rows - when you only want to display, say, 30 per page instead of 1200 records on one web page for admin edits.
    With Meensi's and Furnis' suggestions and, a bit more thought... I kept thinking... It's pretty much like a shopping cart - holding a variable(s) from page to page. I know there's many ways to do this but the problem here lies in the page refresh holding variables with each refresh.
    Seems logical to update All edits at one time - submit the form on the last page. I'm wondering, say as in the case you may have 1200 NextPrevious pages (!) - You'd want the user to do it in bits, page per page.
    Since a clicked link clears session variables... maybe make the page refresh link (Next Page) a submit button and, on refresh, submit just "this particular page variables" and at the same time, the refresh loads the Next Page variables - updating the database in increments and display the next batch to edit.(?)
    Does this make sense? I do want to make this a 'no-brainer' for the user - an admin section being most intuative is foremost to me...
    The following is (stripped down) code I'm using to run the NextPrevious pages. I think maybe if I add the database insert somewhere in the code at the top of the page, coming from a form submit button that refreshes the page at the same time - maybe this would be the way to do it.
    I'm not sure if there will be a problem wrapping the <form></form> around just the current variables on This Page. Maybe not. I think I may experiment with this, though...
    Thank for your input on this.
    Does seem like something like this, updates within NextPrevious pages would be a common practice and an easy fix doesn't it?
    - ed
    <!-- application with session variables and headersecure placed here -->
    <!-- Per above - Put code here for database insert - An "if this page comes from the submitted form on this page" -->
    <!-- The following is, more or less, ThisPage.cfm -->
    <!-- Start displaying with record 1 if not specified via url -->
    <CFPARAM name="start" default="1">
    <!-- Number of records to display on a page -->
    <CFPARAM name="disp" default="40">
    <CFSET SchoolNameDropdown_z=structNew() />
    <CFSET structAppend(#SchoolNameDropdown_z#, URL) />
    <CFSET structAppend(#SchoolNameDropdown_z#, Form) />
    <cfquery DATASOURCE="#application.dsn#" name="search">
    etcetera
    </cfquery>
    <CFSET end=Start + disp>
    <CFIF start + disp GREATER THAN data.RecordCount>
      <CFSET end=999>
    <CFELSE>
      <CFSET end=disp>
    </CFIF>
    <head>
    <link href="global.css" rel="stylesheet" type="text/css" />
    </head>
    <BODY>
    <html>
            <cfset bgcolor = background_table_color_1>
      <cfoutput query="search" startrow="#start#" maxrows="#end#">
       <cfif bgcolor eq background_table_color_2>
        <cfset bgcolor = background_table_color_1>
       <cfelse>
        <cfset bgcolor = background_table_color_2>
       </cfif>
          #TRIM(variable01)#
          #TRIM(variable02)#       
            <input type="radio" name="Consent" value="Yes" <cfif Consent IS "Yes">checked</cfif>> Yes
            <input type="radio" name="Consent" value="No"  <cfif Consent IS "No">checked</cfif>>No
            <input type="radio" name="Assent" value="Yes" <cfif Consent IS "Yes">checked</cfif>> Yes
            <input type="radio" name="Assent" value="No"  <cfif Assent IS "No">checked</cfif>>No
            </cfoutput>
    <CFOUTPUT>
    <!-- Display prev link -->
      <CFIF start NOT EQUAL 1>
      <CFIF start GTE disp>
        <CFSET prev=disp>
        <CFSET prevrec=start - disp>
      <CFELSE>
        <CFSET prev=start - 1>
        <CFSET prevrec=1>
      </CFIF>
      <a href="ThisPage.cfm?start=#prevrec#"><<< Previous #prev# </a>
      </cfif>
    <!-- Display next link -->
    <CFIF end LT data.RecordCount>
      <CFIF start + disp * 2 GTE data.RecordCount>
        <CFSET next=data.RecordCount - start - disp + 1>
      <CFELSE>
        <CFSET next=disp>
      </CFIF>   
        <a href="ThisPage.cfm?start=#Evaluate("start + disp")#">Next #next# >>> </a>
      </cfif>
    </CFOUTPUT>
    </BODY>
    </HTML>
    <!-- end -->

Maybe you are looking for