Looks like an encoding problem, fREW. You might notice its not a dot *between* - its a dot *after* each letter. The data is being sent in as something like 16 bit unicode, and is being serialized out without taking that into account.

I wish I knew the solution, but I hope that provides a lead for you.

David

fREW Schmidt wrote:
Ok, here is my code:

        return $self->basic_data({
                table => 'Customer',
                search => {
                    id => "AA001",
                },
                columns => [qw/id name price_approval_required comments/],
            });


and I am calling this function that I wrote:

    sub basic_data {
        my $self = shift;
        my $params = shift;
        my $table = $params->{table};
        my $search = $params->{search};
        my $columns = $params->{columns};
        my $rows = $self->query->param('limit') || 25;
        my $page = ($self->query->param('start')?(
    $self->query->param('start')/$rows + 1 ):1);
        my $order_by =
    ($self->query->param('sort')?$self->query->param('sort').'
    '.$self->query->param('dir'):'id');
        use DBIx::Class::ResultClass::HashRefInflator;
        my $rs_full = $self->schema()->resultset($table)->search($search,{
            order_by => $order_by,
            columns => $columns,
        });
        my $data = { data => []};
        $data->{total} = $rs_full->count;
        my $rs = $rs_full->search({},{
            rows => $rows,
            page => $page,
        });
        $rs->result_class('DBIx::Class::ResultClass::HashRefInflator');
        while (my $operation_code = $rs->next() ) {
            push @{$data->{data}}, $operation_code;
        }
        return $self->json_body($data);
    }


yet I am getting this error:

    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1] [Dispatch]
    ERROR for request
    '/devcgi/init.plx/controller_WorkOrderEntry/customer?cusomter_id=AA001':
    Error executing run mode 'customer':
    DBIx::Class::ResultSet::next(): DBI Exception: DBD::ODBC::st
    fetchrow_array failed: [Microsoft][SQL Native Client]String data,
    right truncation (SQL-01004) [for Statement "SELECT * FROM
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1] (
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1]     SELECT
    TOP 25 * FROM
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1]     (
[Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1] SELECT TOP 25 me.id <http://me.id>, me.name <http://me.name>,
    me.price_approval_required, me.comments FROM Customers me WHERE (
    id = ? ) ORDER BY id ASC
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1]     ) AS foo
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1]     ORDER BY
    id DESC
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1] ) AS bar
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1] ORDER BY id ASC
    [Thu Feb 12 10:57:16 2009] [error] [client 127.0.0.1] " with
    ParamValues: 1='A.A.0.0.1.'] at C:\\Documents and
    Settings\\frew\\My
    Documents\\Code\\aircraft_ducting/ACD/Controller.pm line 75


Anyone have any idea why it is adding dots between each character in the search?

-fREW


--
fREW Schmidt
http://blog.afoolishmanifesto.com
------------------------------------------------------------------------

_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/dbix-class@lists.scsys.co.uk


_______________________________________________
List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class
IRC: irc.perl.org#dbix-class
SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/
Searchable Archive: http://www.grokbase.com/group/dbix-class@lists.scsys.co.uk

Reply via email to