On-line: PSP, tnsr2, гостей 2. Всего: 4 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 4765
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 11.03.16 21:17. Заголовок: LetoDB - csv to dbf ?


Всем привет.
На сервере с LetoDB есть файл android.csv куда записи пишутся(добавляются) постоянно с телефона в формате CSV.
Как лучше сделать конвертацию в dbf-файл и кто должен эту операцию делать: сервер или локальные станции ?
Новые записи появляющиеся в android.csv нужно показывать на локальных станциях.
Кто что может посоветовать ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 13 [только новые]


постоянный участник


Пост N: 1188
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 11.03.16 21:59. Заголовок: Andrey пишет: На се..


Andrey пишет:

 цитата:
На сервере с LetoDB есть файл android.csv


Расшифруй это.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5508
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 11.03.16 22:20. Заголовок: PSP пишет: Расшифру..


PSP пишет:

 цитата:
Расшифруй это.


+1

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4766
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 11.03.16 22:40. Заголовок: PSP пишет: Расшифру..


PSP пишет:

 цитата:
Расшифруй это.


Файл текстовый, формата CSV в который пишутся данные с телефонов на андроиде (ну не знаю как прикрутить LETO к андроиду, не получилось с ходу, позже этим займусь).
Файл лежит в папке, куда есть доступ LetoDB.
Хочу этот файл после каждого изменения конвертировать в DBF и новые записи показывать на локальных станциях (по таймеру на форме).
Как лучше сделать конвертацию в dbf-файл, т.е. кто должен эту операцию делать: сервер или локальная станции ?
По идее, можно на сервере сделать отдельную функцию, которая будет проводить эту конвертацию.
Или каждая локальная станция будет блокировать файл через семафор и делать конвертацию.
Базы пока маленькие, но если разрастутся, то что тогда будет ? Вот и спрашиваю, какой метод лучше.
Причем это будет не одна база, а несколько, ну пока с 15 баз.


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4767
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 11.03.16 23:28. Заголовок: А можно в Tsbrowse о..


А можно в Tsbrowse открыть файл формата CSV через LetoDB ?
В терминалке - обычным бровсом можно было такое делать.
Помню примеры были ещё на Клипере.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 5509
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 11.03.16 23:48. Заголовок: Andrey пишет: А мож..


Andrey пишет:

 цитата:
А можно в Tsbrowse открыть файл формата CSV через LetoDB ?


А если в массив загнать ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4768
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.03.16 00:20. Заголовок: Dima пишет: А если ..


Dima пишет:

 цитата:
А если в массив загнать ?



Идея интересная. Снимается множество проблем...
Для просмотра пойдёт.
Только вот если юзера чуток править будут (допустим логическое поле - Просмотрел: T/F) то как тогда на сервер LetoDb возвращать изменённый массив и делать перезапись измененных данных ?

И каков максимальный размер массива который можно передать с сервера ?


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1189
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 12.03.16 08:54. Заголовок: Мне кажется, логичне..


Мне кажется, логичнее не конвертировать весь файл после каждого изменения, а следить за добавлением строк в csv и переносить в dbf строками после добавления. Этим же снимается вопрос о "Только вот если юзера чуток править будут"

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4769
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.03.16 14:31. Заголовок: PSP пишет: логичнее..


PSP пишет:

 цитата:
логичнее не конвертировать весь файл после каждого изменения


Спасибо !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4772
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.03.16 18:15. Заголовок: Нашёл в доке функцию..


Нашёл в доке функцию Leto_FileSize( cFileName ).
А есть функции которые бы возвращали дату и время последнего изменения файла ?
Хотя на крайний случай сойдёт и Leto_Directory().

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1190
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 12.03.16 20:34. Заголовок: Andrey пишет: А ест..


Andrey пишет:

 цитата:
А есть функции которые бы возвращали дату и время последнего изменения файла ?


Это ничего не даст. Нужно помимо даты/времени модификации знать позицию в текстовом файле, с которой начинать чтение.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4774
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.03.16 20:38. Заголовок: PSP пишет: Нужно по..


PSP пишет:

 цитата:
Нужно помимо даты/времени модификации знать позицию в текстовом файле, с которой начинать чтение.


Элементарно. Кол-во записей в базе минус кол-во элементов (длина массива) в csv-файле.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1191
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 12.03.16 20:42. Заголовок: Andrey пишет: кол-в..


Andrey пишет:

 цитата:
кол-во элементов (длина массива) в csv-файле


Это придется каждый раз перезаполнять массив, читая весь файл сначала. Если он небольшой, - нет проблем.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4775
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 12.03.16 21:36. Заголовок: PSP пишет: Если он..


PSP пишет:

 цитата:
Если он небольшой, - нет проблем.


Пока небольшой... Потом посмотрим...
Пробовал на 4 тыс.записей - размер файла 300 Кбайт.
Я в Лето пробовал, до 1.5 Мб - нормально считывает.

А какой предел размера считывания - я не знаю...

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 612
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет