Is it a bug about element's depth?

I have two elements in one frame and if I use:
alert(fl.getDocumentDOM().getTimeline().layers[1].frames[2].elements[0].depth);
alert(fl.getDocumentDOM().getTimeline().layers[1].frames[2].elements[1].depth);
It shows me 0 and 1, It is all right!
But if I don't select two of them , the depth is 2 and 2!
How it possible!!!!!
Is it a bug?

Hi,
It works correctly for me. Can you share your test file along with the steps so that we can have a look at what's going wrong for you?
Please note that simple shapes(unselected) at the same layer have the same depth. If you have a drawing object or a symbol instead, then their deapth would be different.
-Nipun

Similar Messages

  • The Bug about 'DB_SECONDARY_BAD' still exists in BerkeleyDB4.8!

    The Bug about 'DB_SECONDARY_BAD' still exists in BerkeleyDB4.8?
    I'm sorry for my poor English, But I just cannot find anywhere else for help.
    Thanks for your patience first!
    I'm using BDB4.8 C++ API on Ubuntu 10.04, Linux Kernel 2.6.32-24-generic
    $uname -a
    $Linux wonpc 2.6.32-24-generic #43-Ubuntu SMP Thu Sep 16 14:17:33 UTC 2010 i686 GNU/Linux
    When I update(overwrite) a record in database, I may get a DB_SECONDARY_BAD exception,
    What's worse, This case doesn't always occures, it's random. So I think it probably a bug
    of BDB, I have seen many issues about DB_SECONDARY_BAD with BDB4.5,4.6...
    To reproduce the issue, I make a simplified test program from my real program.
    The data to be stroed into database is a class called 'EntryData', It's defined in db_access.h,
    where also defines some HighLevel API functions that hide the BDB calls, such as
    store_entry_data(), which use EntryData as its argument. The EntryData have a string-type
    member-data 'name' and a vector<string>-type mem-data 'labels', So store_entry_data() will
    put the real data of EntryData to a contiguous memory block. The get_entry_data() returns
    an EntryData builed up from the contiguous memory block fetched from database.
    The comlete test program is post following this line:
    /////////db_access.h////////////
    #ifndef __DB_ACCESS_H__
    #define __DB_ACCESS_H__
    #include <string>
    #include <vector>
    #include <db_cxx.h>
    class EntryData;
    //extern Path DataDir; // default value, can be changed
    extern int database_setup();
    extern int database_close();
    extern int store_entry_data(const EntryData&, u_int32_t = DB_NOOVERWRITE);
    extern int get_entry_data(const std::string&, EntryData*, u_int32_t = 0);
    extern int rm_entry_data(const std::string&);
    class DBSetup
    // 构造时调用database_setup, 超出作用域自动调用database_close .
    // 该类没有数据成员.
    public:
    DBSetup() {
    database_setup();
    ~DBSetup() {
    database_close();
    class EntryData
    public:
    typedef std::vector<std::string> LabelContainerType;
    EntryData() {}
    EntryData(const std::string& s) : name(s) {}
    EntryData(const std::string& s, LabelContainerType& v)
    : name(s), labels(v) {}
    EntryData(const std::string&, const char*[]);
    class DataBlock;
    // 直接从内存块中构建, mem指针将会从数据库中获取,
    // 它就是EntryData转化成的DataBlock中buf_ptr->buf的内容.
    EntryData(const void* mem_blk, const int len);
    ~EntryData() {};
    const std::string& get_name () const { return name; }
    const LabelContainerType& get_labels() const { return labels; }
    void set_name (const std::string& s) { name = s; }
    void add_label(const std::string&);
    void rem_label(const std::string&);
    void show() const;
    // get contiguous memory for all:
    DataBlock get_block() const { return DataBlock(*this); }
    class DataBlock
    // contiguous memory for all.
    public:
    DataBlock(const EntryData& data);
    // 引进一块内存作为 buf_ptr->buf 的内容.
    // 例如从数据库中获取结果
    DataBlock(void* mem, int len);
    // 复制构造函数:
    DataBlock(const DataBlock& orig) :
    data_size(orig.data_size),
    capacity(orig.capacity),
    buf_ptr(orig.buf_ptr) { ++buf_ptr->use; }
    // 赋值操作符:
    DataBlock& operator=(const DataBlock& oth)
    data_size = oth.data_size;
    capacity = oth.capacity;
    if(--buf_ptr->use == 0)
    delete buf_ptr;
    buf_ptr = oth.buf_ptr;
    return *this;
    ~DataBlock() {
    if(--buf_ptr->use == 0) { delete buf_ptr; }
    // data()函数因 Dbt 构造函数不支持const char*而被迫返回 char*
    // data() 返回的指针是应该被修改的.
    const char* data() const { return buf_ptr->buf; }
    int size() const { return data_size; }
    private:
    void pack_str(const std::string& s);
    static const int init_capacity = 100;
    int data_size; // 记录数据块的长度.
    int capacity; // 已经分配到 buf 的内存大小.
    class SmartPtr; // 前向声明.
    SmartPtr* buf_ptr;
    class SmartPtr
    friend class DataBlock;
    char* buf;
    int use;
    SmartPtr(char* p) : buf(p), use(1) {}
    ~SmartPtr() { delete [] buf; }
    private:
    std::string name; // entry name
    LabelContainerType labels; // entry labels list
    }; // class EntryData
    #endif
    //////db_access.cc/////////////
    #include <iostream>
    #include <cstring>
    #include <cstdlib>
    #include <vector>
    #include <algorithm>
    #include "directory.h"
    #include "db_access.h"
    using namespace std;
    static Path DataDir("~/mydict_data"); // default value, can be changed
    const Path& get_datadir() { return DataDir; }
    static DbEnv myEnv(0);
    static Db db_bynam(&myEnv, 0); // using name as key
    static Db db_bylab(&myEnv, 0); // using label as key
    static int generate_keys_for_db_bylab
    (Db* sdbp, const Dbt* pkey, const Dbt* pdata, Dbt* skey)
    EntryData entry_data(pdata->get_data(), pdata->get_size());
    int lab_num = entry_data.get_labels().size();
    Dbt* tmpdbt = (Dbt*) malloc( sizeof(Dbt) * lab_num );
    memset(tmpdbt, 0, sizeof(Dbt) * lab_num);
    EntryData::LabelContainerType::const_iterator
    lab_it = entry_data.get_labels().begin(), lab_end = entry_data.get_labels().end();
    for(int i = 0; lab_it != lab_end; ++lab_it, ++i) {
    tmpdbt[ i ].set_data( (void*)lab_it->c_str() );
    tmpdbt[ i ].set_size( lab_it->size() );
    skey->set_flags(DB_DBT_MULTIPLE | DB_DBT_APPMALLOC);
    skey->set_data(tmpdbt);
    skey->set_size(lab_num);
    return 0;
    //@Return Value: return non-zero at error
    extern int database_setup()
    const string DBEnvHome (DataDir + "DBEnv");
    const string dbfile_bynam("dbfile_bynam");
    const string dbfile_bylab("dbfile_bylab");
    db_bylab.set_flags(DB_DUPSORT);
    const u_int32_t env_flags = DB_CREATE | DB_INIT_MPOOL;
    const u_int32_t db_flags = DB_CREATE;
    rmkdir(DBEnvHome);
    try
    myEnv.open(DBEnvHome.c_str(), env_flags, 0);
    db_bynam.open(NULL, dbfile_bynam.c_str(), NULL, DB_BTREE, db_flags, 0);
    db_bylab.open(NULL, dbfile_bylab.c_str(), NULL, DB_BTREE, db_flags, 0);
    db_bynam.associate(NULL, &db_bylab, generate_keys_for_db_bylab, 0);
    } catch(DbException &e) {
    cerr << "Err when open DBEnv or Db: " << e.what() << endl;
    return -1;
    } catch(std::exception& e) {
    cerr << "Err when open DBEnv or Db: " << e.what() << endl;
    return -1;
    return 0;
    int database_close()
    try {
    db_bylab.close(0);
    db_bynam.close(0);
    myEnv.close(0);
    } catch(DbException &e) {
    cerr << e.what();
    return -1;
    } catch(std::exception &e) {
    cerr << e.what();
    return -1;
    return 0;
    // 返回Dbt::put()的返回值
    int store_entry_data(const EntryData& e, u_int32_t flags)
    int res = 0;
    try {
    EntryData::DataBlock blk(e);
    // data()返回的buf中存放的第一个字符串便是 e.get_name().
    Dbt key ( (void*)blk.data(), strlen(blk.data()) + 1 );
    Dbt data( (void*)blk.data(), blk.size() );
    res = db_bynam.put(NULL, &key, &data, flags);
    } catch (DbException& e) {
    cerr << e.what() << endl;
    throw; // 重新抛出.
    return res;
    // 返回 Db::get()的返回值, 调用成功时 EntryData* e的值才有意义
    int get_entry_data
    (const std::string& entry_name, EntryData* e, u_int32_t flags)
    Dbt key( (void*)entry_name.c_str(), entry_name.size() + 1 );
    Dbt data;
    data.set_flags(DB_DBT_MALLOC);
    int res = db_bynam.get(NULL, &key, &data, flags);
    if(res == 0)
    new (e) EntryData( data.get_data(), data.get_size() );
    free( data.get_data() );
    return res;
    int rm_entry_data(const std::string& name)
    Dbt key( (void*)name.c_str(), name.size() + 1 );
    cout << "to remove: \'" << name << "\'" << endl;
    int res = db_bynam.del(NULL, &key, 0);
    return res;
    EntryData::EntryData(const std::string& s, const char* labels_arr[]) : name(s)
    {   // labels_arr 需要以 NULL 结尾.
    for(const char** i = labels_arr; *i != NULL; i++)
    labels.push_back(*i);
    EntryData::EntryData(const void* mem_blk, const int len)
    const char* buf = (const char*)mem_blk;
    int consumed = 0; // 已经消耗的mem_blk的大小.
    name = buf; // 第一串为 name
    consumed += name.size() + 1;
    for (string label = buf + consumed;
    consumed < len;
    consumed += label.size() + 1)
    label = buf + consumed;
    labels.push_back(label);
    void EntryData::add_label(const string& new_label)
    if(find(labels.begin(), labels.end(), new_label)
    == labels.end())
    labels.push_back(new_label);
    void EntryData::rem_label(const string& to_rem)
    LabelContainerType::iterator iter = find(labels.begin(), labels.end(), to_rem);
    if(iter != labels.end())
    labels.erase(iter);
    void EntryData::show() const {
    cout << "name: " << name << "; labels: ";
    LabelContainerType::const_iterator it, end = labels.end();
    for(it = labels.begin(); it != end; ++it)
    cout << *it << " ";
    cout << endl;
    EntryData::DataBlock::DataBlock(const EntryData& data) :
    data_size(0),
    capacity(init_capacity),
    buf_ptr(new SmartPtr(new char[init_capacity]))
    pack_str(data.name);
    for(EntryData::LabelContainerType::const_iterator \
    i = data.labels.begin();
    i != data.labels.end();
    ++i) { pack_str(*i); }
    void EntryData::DataBlock::pack_str(const std::string& s)
    int string_size = s.size() + 1; // to put sting in buf separately.
    if(capacity >= data_size + string_size) {
    memcpy(buf_ptr->buf + data_size, s.c_str(), string_size);
    else {
    capacity = (data_size + string_size)*2; // 分配尽可能大的空间.
    buf_ptr->buf = (char*)realloc(buf_ptr->buf, capacity);
    memcpy(buf_ptr->buf + data_size, s.c_str(), string_size);
    data_size += string_size;
    //////////// test_put.cc ///////////
    #include <iostream>
    #include <string>
    #include <cstdlib>
    #include "db_access.h"
    using namespace std;
    int main(int argc, char** argv)
    if(argc < 2) { exit(EXIT_FAILURE); }
    DBSetup setupup_mydb;
    int res = 0;
    EntryData ed(argv[1], (const char**)argv + 2);
    res = store_entry_data(ed);
    if(res != 0) {
         cerr << db_strerror(res) << endl;
         return res;
    return 0;
    // To Compile:
    // $ g++ -ldb_cxx -lboost_regex -o test_put test_put.cc db_access.cc directory.cc
    //////////// test_update.cc ///////////
    #include <iostream>
    #include <cstdlib>
    #include <string>
    #include <boost/program_options.hpp>
    #include "db_access.h"
    using namespace std;
    namespace po = boost::program_options;
    int main(int argc, char** argv)
    if(argc < 2) { exit(EXIT_SUCCESS); }
    DBSetup setupup_mydb;
    int res = 0;
    po::options_description cmdopts("Allowed options");
    po::positional_options_description pos_opts;
    cmdopts.add_options()
    ("entry", "Specify the entry that will be edited")
    ("addlabel,a", po::value< vector<string> >(),
    "add a label for specified entry")
    ("removelabel,r", po::value< vector<string> >(),
    "remove the label of specified entry")
    pos_opts.add("entry", 1);
    po::variables_map vm;
    store( po::command_line_parser(argc, argv).
    options(cmdopts).positional(pos_opts).run(), vm );
    notify(vm);
    EntryData entry_data;
    if(vm.count("entry")) {
    const string& entry_to_edit = vm["entry"].as<string>();
    res = get_entry_data( entry_to_edit, &entry_data );
    switch (res)
    case 0:
    break;
    case DB_NOTFOUND:
    cerr << "No entry named: \'"
    << entry_to_edit << "\'\n";
    return res;
    break;
    default:
    cerr << db_strerror(res) << endl;
    return res;
    } else {
    cerr << "No entry specified\n";
    exit(EXIT_FAILURE);
    EntryData new_entry_data(entry_data);
    typedef vector<string>::const_iterator VS_CI;
    if(vm.count("addlabel")) {
    const vector<string>& to_adds = vm["addlabel"].as< vector<string> >();
    VS_CI end = to_adds.end();
    for(VS_CI i = to_adds.begin(); i != end; ++i) {
    new_entry_data.add_label(*i);
    if(vm.count("removelabel")) {
    const vector<string>& to_rems = vm["removelabel"].as< vector<string> >();
    VS_CI end = to_rems.end();
    for(VS_CI i = to_rems.begin(); i != end; ++i) {
    new_entry_data.rem_label(*i);
    cout << "Old data| ";
    entry_data.show();
    cout << "New data| ";
    new_entry_data.show();
    res = store_entry_data(new_entry_data, 0); // set flags to zero permitting Over Write
    if(res != 0) {
    cerr << db_strerror(res) << endl;
    return res;
    return 0;
    // To Compile:
    // $ g++ -ldb_cxx -lboost_regex -lboost_program_options -o test_update test_update.cc db_access.cc directory.cc

    ////////directory.h//////
    #ifndef __DIRECTORY_H__
    #define __DIRECTORY_H__
    #include <string>
    #include <string>
    #include <sys/types.h>
    using std::string;
    class Path
    public:
    Path() {}
    Path(const std::string&);
    Path(const char* raw) { new (this) Path(string(raw)); }
    Path upper() const;
    void operator+= (const std::string&);
    // convert to string (char*):
    //operator std::string() const {return spath;}
    operator const char*() const {return spath.c_str();}
    const std::string& str() const {return spath;}
    private:
    std::string spath; // the real path
    inline Path operator+(const Path& L, const string& R)
    Path p(L);
    p += R;
    return p;
    int rmkdir(const string& path, const mode_t mode = 0744, const int depth = -1);
    #endif
    ///////directory.cc///////
    #ifndef __DIRECTORY_H__
    #define __DIRECTORY_H__
    #include <string>
    #include <string>
    #include <sys/types.h>
    using std::string;
    class Path
    public:
    Path() {}
    Path(const std::string&);
    Path(const char* raw) { new (this) Path(string(raw)); }
    Path upper() const;
    void operator+= (const std::string&);
    // convert to string (char*):
    //operator std::string() const {return spath;}
    operator const char*() const {return spath.c_str();}
    const std::string& str() const {return spath;}
    private:
    std::string spath; // the real path
    inline Path operator+(const Path& L, const string& R)
    Path p(L);
    p += R;
    return p;
    int rmkdir(const string& path, const mode_t mode = 0744, const int depth = -1);
    #endif
    //////////////////// All the code is above ////////////////////////////////
    Use the under command
    $ g++ -ldb_cxx -lboost_regex -o test_put test_put.cc db_access.cc directory.cc
    to get a test program that can insert a record to database.
    To insert a record, use the under command:
    $ ./test_put ubuntu linux os
    It will store an EntryData named 'ubuntu' and two labels('linux', 'os') to database.
    Use the under command
    $ g++ -ldb_cxx -lboost_regex -lboost_program_options -o test_update test_update.cc db_access.cc directory.cc
    to get a test program that can update the existing records.
    To update the record, use the under command:
    $ ./test_update ubuntu -r linux -a canonical
    It will update the with the key 'ubuntu', with the label 'linux' removed and a new
    label 'canonical'.
    Great thanks to you if you've read and understood my code!
    I've said that the DB_SECONDARY_BAD exception is random. The same operation may cause
    exception in one time and may goes well in another time.
    As I've test below:
    ## Lines not started with '$' is the stdout or stderr.
    $ ./test_put linux os linus
    $ ./test_update linux -r os
    Old data| name: linux; labels: os linus
    New data| name: linux; labels: linus
    $ ./test_update linux -r linus
    Old data| name: linux; labels: linus
    New data| name: linux; labels:
    dbfile_bynam: DB_SECONDARY_BAD: Secondary index inconsistent with primary
    Db::put: DB_SECONDARY_BAD: Secondary index inconsistent with primary
    terminate called after throwing an instance of 'DbException'
    what(): Db::put: DB_SECONDARY_BAD: Secondary index inconsistent with primary
    已放弃
    Look! I've received a DB_SECONDARY_BAD exception. But thus exception does not always
    happen even under the same operation.
    For the exception is random, you may have not the "luck" to get it during your test.
    So let's insert a record by:
    $ ./test_put t
    and then give it a great number of labels:
    $ for((i = 0; i != 100; ++i)); do ./test_update t -a "label_$i"; done
    and then:
    $ for((i = 0; i != 100; ++i)); do ./test_update t -r "label_$i"; done
    Thus, the DB_SECONDARY_BAD exception is almost certain to happen.
    I've been confused by the problem for times. I would appreciate if someone can solve
    my problem.
    Many thanks!
    Wonder

  • Is a BUG about 64bit JDK?

    public class TestThread {
        public static void main(String[] args) {
            IRun ir = new IRun();
            Thread it = new Thread(ir);
            it.start();
            try {
                Thread.sleep(1000);
            } catch (InterruptedException ex) {
                Logger.getLogger(TestThread.class.getName()).log(Level.SEVERE, null, ex);
            ir.setStop();
        static class IRun implements Runnable {
            boolean exec = true;
            public void setStop() {
                exec = false;
            @Override
            public void run() {
                int c = 0;
                while (exec) {
                    c++;
                System.out.println("exit while loop");
    In 64bit JDK, it will appear a strange logic to run above code. The thread it will not to end, and the program will not exit. But, if there is Object operate(e.g. new, invoke Object's function(can't retrun base data type), System.out.prinltn), it will run normally. For example, modify run() function :
    publicvoid run() { 
    int c = 0; 
    while (exec) { 
        String s = new String(""); 
        c++; 
       System.out.println("exit while loop"); 
    But in 32bit JDK, it will run correctly. Start thread, and wait 1 seconds, print "exit while loop", and exit program.
    Is a BUG about 64bit JDK?

    thanks, it is error forum!

  • Are there still bugs in Elements 4

    Are there still bugs in Elements 4?
    Looking at the feature list I am tempted to buy Elements 4. But I have read many reviews that indicate that it is "bug ridden"- most reviews are dated just after release. Have Adobe fixed the bugs now?
    Advice very welcome...

    Unfortunately you seem to be suffering from what has come to be known in PE4 terms as the "Goldilocks Syndrome". Do you remember when Goldilocks ate the porridge; one was too hot; one was too cold and one was just right. This went on with the beds etc. Well, it seems (from this very forum) that PE4 has a similar problem; if your computer is over specified (even with ALL the latest available drivers installed), it won't run properly; if it is under specified (even with ALL the latest available drivers installed), it also won't run properly, it has to be just right. There are people out there who's computers are just right, as we don't hear from them, obviously.
    See if you can take your copy of PE4 back to the shop (they should have told you that a new one was coming out, well, if they were a good shop) and wait for PE7 which should have all the PE4 bugs worked out. They don't have to do much with the interface as it's already flawless. Very difficult to improve on the best. They just have to make sure it works on E-V-E-R-Y-O-N-E's computer.
    Have a look at Steve's PE7 introduction video's on the Adobe website. That's how a software should work.
    Best of luck.

  • I have photoshop elements 12 and it shows elements 11 on my icons and also when hitting about elements it states 11 and not 12 ? however the cd shows 12 , I'm confused

    i have photoshop elements 12 installed and it shows elements 11 on my icons and also when hitting about elements it states 11 and not 12 ? however the cd shows 12 , I'm confused as why it shows elements 11 and not 12...

    Where did you buy the CD? Was it a boxed, seal unbroken?

  • My thread is gone! Is it undesired to post bugs about Oracle Products here?

    A few days ago i posted a thread here about a bog in ODP.NET Driver 10.2.0.2.10 Beta
    Now this thread seems deleted.
    Is it undesired to post bugs about Oracle Products here?

    Thank you Mark for the info.
    The practise to delete posts without any comments casts a damning light on Oracle and can gives the impression that oracle the way of repairing bus is to hide them.
    For a cutomers like me that invets time to analyze issues in oracle software and invets time again to post them here to help Oracle it is very disappointing to see that my posts are delete without comments.
    Oracle should think about that mistreating their customers is not a fine way. This is unsuitable for giving custumers the feeling that Oracle is intrested in their problems.
    The right way would be to delete the content of a post intead of the complete thread and give a small comment why it has ben removed.
    Sorry for this harsh post, but in the last monts i am more and more disappointed about the faultiness of Oracle products, the slowness of Oracle Support and the false promises regarding to meeting deatlines.
    I have the feeling to be on a sinking ship with Oracle.
    This Forum here is sometime a ray of hope but the rest of Oracle...

  • FAQ: I opted out of marketing email from Adobe. Why did I get an email about Elements membership?

    Q: I opted out of marketing email from Adobe. Why did I get an email about Elements membership?
    A: The email you received was an operational notice regarding changes to Elements membership. Only users who may be affected by these changes received this email.

    Hi Steve,
    I can personally ensure you get it if after waiting the 60 days you still haven't recieved it yet.
    You would also want to ensure:
    - You have the annual (yearly) Creative Cloud plan
    - You log into the Creative Cloud website from within 3 of the Adobe Touch Apps from the tablet using your Adobe ID associated with your membership
    If all this looks correct and you don't recieve an email after the 60 days, send me a private message and I'll ensure you get it.
    -Dave

  • How much longer will we have to wait before Adobe fixes the bugs in Elements 10?

    Lassoo misbehaving - I use it all the time - I'm seriously thinking of consigning Elements 10 to the bin and going back to Elements 8. Can't save file owing to program error - every second or third save - drives me bananas. I know, I know, if I click in the corner of the box a couple of times it works again but I expect a program to work as described not to have to patch it up myself.
    So come on Adobe pull your finger out and fix it - I spent my money on your product now you spend some of yours on getting it right.

    If you look around at all the forums and support sites you will find this exact same question be asked everywhere concerning numerous bugs. Right now the only answer you get is "try elements 11 you'll like it". So in my humble opinion I think ADOBE plans on fixing the bugs in elements 9 and 10 when you know what freezes over and not a minute sooner. For all those considering elements 11 you might want to wait and see what shows up in the forums concerning any bugs it may have, because based on any past experience they won't fix until next version (12) comes out, in other words you become the beta tester for the next version.

  • CCM 4.1(3) bug about CDR

    Hello,
    i want know if there is a bug about a cdr?
    many thaks

    Hi rob,
    I had sent your answer to the MIND support (MEIPS), and has their answer:
    I extracted from the CDR the records for the call that was made. Here's a description of the case below :
    Scenario :
    Extension 9243 calls external number 1061314689 , and afterwards makes a transfer to extension 9272 .
    The driver should generate 2 calls from the above scenario, based on the CDR records :
    1) Outgoing call from 9243 to 1061314689, until the transfer was made
    2) Outgoing forwarded (transferred) call from 9272 to 1061314689, starting with the time the transfer was made; 9243 should be in the Ext2 field
    Corresponding CDR records :
    1.
    1,1,311601,17518309,1160753742,1,0,621023660,,9243,0,126,621023660,16384,4,20,0,17518310,1,17518310,90613952,,1061314689,1061314689,0,126,90613952,19072,4,20,0,1160753754,1160753779,1061314689,CDG_Nat,logue,CDG_Nat,CDG_Nat,25,SEP0016472DB18B,192.168.102.5,0,0,0,10,10,0,0,StandAloneCluster,0,4,0,0,0,0,0,4,0,0,0,0,0,,slime,,,0,
    Result - see attached screenshot - 9243 to external - CORRECT
    2.
    1,1,311601,17518310,1160753779,1,17518310,90613952,,1061314689,0,0,90613952,19072,4,20,0,17518323,1,0,100929964,,9272,9272,0,16,100929964,16384,4,20,0,1160753782,1160753869,9243,logue,CDG_Nat,logue,logue,87,192.168.102.5,SEP0016472DB261,0,4,0,0,12,0,10,StandAloneCluster,10,4,0,0,0,0,0,4,0,0,0,0,0,,,ylahlou,,0,
    Result - see attached screenshot - 9272 to external - INCORRECT
    There is a problem with the last call - it is processed as Incoming Forward instead of Outgoing Forward. Although the scenario assumes an outgoing call, the CDR record generated by the Call Manager indicates an incoming call :
    the origSpan field contains a different-from-0 value, while the destSpan field is 0;
    the callingPartyNumber field is the mobile number (1061314689);
    the finalCalledPartyNumber and originalCalledPartyNumber is the extension number (9272)
    Now, according to how the CDR data looks, our driver processes the call correctly (Incoming Forward). What i don't understand is why the Call Manager sends the last call in that format (so, as an Incoming Forward) - can you check this with someone from Cisco or check if there's something to be configured on the Call Manager ?
    Best Regards,
    I want to know your opinion concerning this answer.
    Many thanks
    Hicham

  • Bug in Elements 12 with Thumbnails.

    Under PSE-10 I had an occassional bug with thumbnails in that sometimes they disappeared and were replaced with grey squares. Right-clicking "Update Thumbnail" got them back, even if sometimes not for long.
    I had hoped that in PSE-12 the bug would have been fixed, but in fact it is much worse. PSE-12 gets into a state where if I scroll through my pictures (about 18'000) some of the thumbnails first appear and then very quickly they are overwritten in grey. Sometimes Update brings them back, but often it doesn't. Sometimes changing the magnification gets the images back, and sometimes it doesn't. Moreover, changing the magnification seems often simply to rescale an image by pixel replication without recalculating from scratch, leaving a badly out of focus image.
    Has anyone else seen this effect and, if they have, found a remedy? (Well, it is not impossible, I suppose...)
        David M.
    (I am using Windows 7 with all updates on a 6 GB machine with a 30 inch 2560x1600 screen)

    D-R-M a écrit:
    I spoke too soon. After a short amount of playing with PSE-Organizer the thumb.5.cache file is back up to 663 MB and the thumbnails are quickly being replaced by grey boxes with a broken link icon.
    I was going to tell you that 35.6 MB can't hold all your thumbnails. 663 MB seems the right size.
    About files the thumbnails of which don't update : are they very big files ? are they raw files ?
    Here is an old Adobe paper about similar symptoms in PSE6:
    http://kb2.adobe.com/cps/403/kb403728.html
    It may be time to delete the organizer preferences and status:
    "C:\Users\[your name]\AppData\Roaming\Adobe\Elements Organizer\12.0\Organizer\psa.prf"

  • Reporting a bug in Elements 13 to Adobe

    Can someone please let Adobe know about the bug in software Elements13. People cannot print , default printer will not open, using "Editor". Read the messages in "Forum", many people have the same problem. I spoke to Adobe on phone, but they were not interested in what I told them. I also have problems with the sizing when trying to add a border. Does not go/remain to correct size that is entered. Tested with using same printer sizing the borders on four other versions of Elements & Paintshop pro x7. No problems  with printing or sizing borders. This bug needs to be fix by Adobe, sooner , rather than later, for the sake of all who have Elements 13.
    Thank You

    Please update PSE 13 to PSE13.1 using Help > Updates and see if it helps.
    Thanks,
    Anwesha

  • File menu bug in Elements 8 for Mac

    I recently purchased Photoshop Elements 8 for Mac. While the software overall works very well, I noticed a bug which has now started hampering my work. Out of the blue, 'Open', 'Open New Blank File' and 'Browse with Bridge' in the file menu become grey (disabled) and shotrcuts for opening files (Command-O and Command-N) or clicking on the open new file icon yield no result. Preferences menu cannot be accessed as well. As per the software license, I installed Elements on an iMac running OS 10.5.8 and on my MacBook running OS 10.4.11 I am having this problem on both :-( The menus do appear but intermittently. Any help to fix this bug would be deeply appreciated. Thanks in advance.

    I got it!!!!!
    It's a clipboard related problem! Whenever I copy an image (a vector image or graphic specifically) from any application, New 'Image from Clipboard' option (in the file menu) gets enabled in Elements 8 and due to it, all menus relating to opening a new file get disabled including, strangely, preferences. Somehow Elements assumes that the new file/image will be the same as the one in the clipboard. The moment I copy any text in any application (so that the clipboard does not have any graphic in it), the disabled Elements menus get enabled! It seems Elements 8 does not support vector graphics perhaps that's why..

  • Question about elements in ABAP programming. Please see..

    Hi all,
    I want to know what is the way to find more info about an element eg SPOS in the structure ALV_S_SORT.  The short description doesnt tell much. When I was reading a word file (tutorial on ALV reports) I came to know that this is used to provide sort criteria for the different fields. But I don't know what should be the value of SPOS? I see that it is a NUMC2 (length=2) type data.  This info is used in the function call REUSE_ALV_LIST_DISPLAY, but no info on what values to give to it?
    Please let me know what is the right approach to tackle such issues at clients place.. Should I ask at this forum each time.. Please let me know about the field spos and how did you find out.
    Thanks,
    Charles.

    Hello Charles
    If you want to start with ALV programming but are not yet comfortable enough with class-based ALV list (CL_GUI_ALV_GRID, CL_SALV_TABLE) then I highly recommend to use fm REUSE_ALV_GRID_DISPLAY_LVC. The interface of the fm is very similar (if not identical) to method SET_TABLE_FOR_FIRST_DISPLAY of CL_GUI_ALV_GRID.
    In order to understand the function of its parameters have a look at the excellent tutorial [An Easy Reference For ALV Grid Control|https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e8a1d690-0201-0010-b7ad-d9719a415907]
    The tutorial is intended for OO-based ALV lists but using the fm I suggested you can use this documentation as well.
    Regards
      Uwe

  • Trouble about Element

    I was doing something with SOAP JAVA, and ODBC. I want to send the information selected from database back to client, use Element. but the element transmit back is null, seems the information couldnt add to the Element.
    public class checkData{
    public Element GetStudentPInfo(String arg1) throws IllegalArgumentException{
         Element result=null;
         if (arg1 == null)
    throw new IllegalArgumentException("Parameter wrong");
    String url="jdbc:odbc:Registry";
    String cs="select * from student where ID = '" arg1 "'";
    Connection con;
    Statement stmt;
    try {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    } catch(java.lang.ClassNotFoundException e) {
    System.err.print("ClassNotFoundException:");
    System.err.println(e.getMessage());
    try {
    con=DriverManager.getConnection(url);
    stmt=con.createStatement();
    ResultSet rs=stmt.executeQuery(cs);
    result.setAttribute("name",rs.getString("Name"));
    result.setAttribute("id",arg1);
    result.setAttribute("telephone",rs.getString("Telephone"));
    result.setAttribute("address",rs.getString("Address"));
    result.setAttribute("email",rs.getString("EMAIL"));
    stmt.close();
    con.close();
    } catch(SQLException ex) {
    System.err.println("SQLException: "+ex.getMessage());
    return result;
    }

    the element transmit back is nullThat's because you created it that way, in this line of code:Element result=null;That code later, where you do "result.setAttribute(...)", will throw a NullPointerException if it is ever executed, because result is a null reference. You need to create an Element object. I don't know anything about your Element class but maybeElement result=new Element();would work.

  • Undo "bug" in Elements 13

    I can't undo the first thing I do in Elements 13.
    What this means is that I open a file, draw a line with the brush tool, try to undo and I can't.  (I've tried esc, ctrl +Z, there's no undo icon in the task bar, and there's no Undo under Edit in the menu bar)  I can undo the second and subsequent action (not a PS action, but something that you do to the image);  the undo icon works. 
    The only way I can see to get back to the original image is to click on the file name in the History panel or use Edit > Revert from the menu bar. This is a pain in the patootie.  Is this a bug or a new "feature"  Anyone else have this problem?
    Tried brush tool, clone stamp, shape tool, etc.
    Details:
    PSE 13 on Windows 7, expert mode.

    there's no Undo under Edit in the menu bar
    Something is very wrong if you're in Expert mode:

Maybe you are looking for