Я использую SQLite l oop внутри другого l oop для заполнения массива tablebody. Я использую следующий код, но когда createpdf исполняемый tablebody содержит только содержимое stati c вместо содержимого stati c и dynamici c. Где я не прав?
var tablebody = [];
tablebody.push([{text: valuea1}, {text: valuea2}, {text: valuea3}]); //static content
tablebody.push([{text: valueb1}, {text: valueb2}, {text: valueb3}]); //static content
t.execute('SELECT * FROM table WHERE value = ?', [value], function(e, results){
var len = results.rows.length;
for (i = 0; i < len; i += 1) {
row = results.rows.item(i);
dummy(row.value1, row.name, row.number);
if (i == len-1){
createpdf();
}
}
function dummy(val1, val2, val3){
t.execute('SELECT * FROM table2 WHERE internalValue = ?', [internalvalue], function(e, results2){
lenstats = results2.rows.length; //length = 2
for (j = 0; j < lenstats; j += 1) {
row2 = results2.rows.item(j);
tablebody.push([{text: row2.value1}, {text: row2.value2}, {text: row2.value3}]); //dynamic content
console.log(tablebody.length) //length = 4 after the loop end
}
}
}
function createpdf(){
console.log(tablebody.length) //length = 2
}
}