Ketika saya menjalankan testThatFails di bawah ini saya mendapatkan kesalahan berikut:

MISMATCHED_SEARCH_PARENTHESIS : Kesalahan pencarian: Tanda kurung tidak seimbang.

Mengapa saya mendapatkan kesalahan itu?

Jika saya mengubah is menjadi haskeywords, itu berfungsi (testThatSucceeds).

Jika saya mengeluarkan ,"AND",["line","equalto","1"], itu berfungsi (anotherTestThatSucceeds).

Jika saya mengubah numbertext menjadi number, itu berfungsi (yetAnotherTestThatSucceeds).

define(['N/search'], function (nSearch) {

    function testThatFails() {
        var objSearch = nSearch.create({
            type: 'transaction',
            filters: [[["numbertext","is","1"],"AND",["line","equalto","1"]]],
            columns: [nSearch.createColumn({
                name: 'internalid'
            })]
        });

        var resultSet = objSearch.run();

        resultSet.getRange({ start: 0, end: 1000 });
    }

    function testThatSucceeds() {
        var objSearch = nSearch.create({
            type: 'transaction',
            filters: [[["numbertext","haskeywords","1"],"AND",["line","equalto","1"]]],
            columns: [nSearch.createColumn({
                name: 'internalid'
            })]
        });

        var resultSet = objSearch.run();

        resultSet.getRange({ start: 0, end: 1000 });
    }

    function anotherTestThatSucceeds() {
        var objSearch = nSearch.create({
            type: 'transaction',
            filters: [[["numbertext","is","1"]]],
            columns: [nSearch.createColumn({
                name: 'internalid'
            })]
        });

        var resultSet = objSearch.run();

        resultSet.getRange({ start: 0, end: 1000 });
    }

    function yetAnotherTestThatSucceeds() {
        var objSearch = nSearch.create({
            type: 'transaction',
            filters: [[["number","is","1"],"AND",["line","equalto","1"]]],
            columns: [nSearch.createColumn({
                name: 'internalid'
            })]
        });

        var resultSet = objSearch.run();

        resultSet.getRange({ start: 0, end: 1000 });
    }
});
1
Jesus is Lord 18 Agustus 2017, 00:57

2 jawaban

Jawaban Terbaik

Kolom numbertext tidak terdaftar sebagai filter yang didukung. Anda dapat menggunakannya untuk memfilter pencarian Anda tetapi dapat menyebabkan perilaku yang tidak terduga. Anda harus menggunakan number sebagai gantinya.

1
Andrés Andrade 18 Agustus 2017, 18:18

Satu-satunya kurung tidak seimbang yang bisa saya lihat adalah kurung pertama segera setelah define yang tidak ditutup di akhir contoh Anda. Tidak yakin mengapa itu memungkinkan fungsi lain berfungsi.

0
Krypton 18 Agustus 2017, 13:38