powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / экспорт файлов
21 сообщений из 21, страница 1 из 1
экспорт файлов
    #37275052
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите с кодом, есть две базы arm secretary.dbc и armzo3.dbc, размещение : первой - d:\secretar\arm secretary.dbc, второй - d:\arm 3.0\armzo3.dbc
в базе arm secretary нужно из таблицы zayvlenie выбрать поля (ну список их больше, но хотябы эти) im, fam, otch, а их значения поместить в таблицу studenty c полями im_stud, ot_stud, fam_stud базы armzo3

пишу вот такой код:
INSERT INTO studenty.dbf(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM table zayvlenie.dbf;
use studenty in 0 alias1
use zayvlenie in 0 alias2

типы полей одинаковые, только имена разные и их больше, но они в принципе так же соответствуют, просто хотябы на таком маленьком примере подскажите пожалуйста
...
Рейтинг: 0 / 0
экспорт файлов
    #37275064
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123,
Ну так пробовал команду запускать? Какой результат?
...
Рейтинг: 0 / 0
экспорт файлов
    #37275827
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
use d:\armzo\studenty in 0
use d:\secretar\zayvlenie in 0
INSERT INTO studenty.dbf(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie.dbf;
вот немного изменил код
вчера все работало, сегодня выдает ошибку column 'IM' is not found
...
Рейтинг: 0 / 0
экспорт файлов
    #37275858
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123use d:\armzo\studenty in 0
use d:\secretar\zayvlenie in 0
INSERT INTO studenty.dbf(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie.dbf;
вот немного изменил код
вчера все работало, сегодня выдает ошибку column 'IM' is not found
...
Рейтинг: 0 / 0
экспорт файлов
    #37275945
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IgorNG,

спасибо, уже сам заметил, теперь допустим, что заранее мы не знаем путь ни к одной ни к другой базе, мы вводим их в текстбоксы на форме, а запрос запускаем по кнопке, тогда как мне обратиться именно к таблицам? пишу такой код:
кнопки выбора каталога:
thisform.text1.value=getdir()
thisform.text2.value=getdir()
кнопка запуска запроса:
use (allt(thisform.text1.value))+'studenty' in 0
use (allt(thisform.text2.value))+'zayvlenie' in 0
INSERT INTO studenty(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie;
ENDPROC
я так понимаю просто сложить текст не прокатывает, а use allt(thisform.text1.value)) выдает значение лишь каталога
...
Рейтинг: 0 / 0
экспорт файлов
    #37275946
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
jk00123,

а в идеале, хотелось бы, чтобы при каждом запуске нам не надо было вводить пути каждый раз! как можно их сохранить?
...
Рейтинг: 0 / 0
экспорт файлов
    #37275957
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123,
Базу данных в проект включи.
Почитай в хэлпе SYS(5), SYS(2003)
...
Рейтинг: 0 / 0
экспорт файлов
    #37275971
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123IgorNG,

спасибо, уже сам заметил, теперь допустим, что заранее мы не знаем путь ни к одной ни к другой базе, мы вводим их в текстбоксы на форме, а запрос запускаем по кнопке, тогда как мне обратиться именно к таблицам? пишу такой код:
кнопки выбора каталога:
thisform.text1.value=getdir()
thisform.text2.value=getdir()
кнопка запуска запроса:
use (allt(thisform.text1.value))+'studenty' in 0
use (allt(thisform.text2.value))+'zayvlenie' in 0
INSERT INTO studenty(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie;
ENDPROC
я так понимаю просто сложить текст не прокатывает, а use allt(thisform.text1.value)) выдает значение лишь каталога

Что значит "просто сложить текст не прокатывает"?
...
Рейтинг: 0 / 0
экспорт файлов
    #37275994
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IgorNG,
CLOSE DATABASES ALL
use (ADDBS(allt(thisform.text1.value))+ 'studenty') in 0
use (ADDBS(allt(thisform.text2.value))+ 'zayvlenie') in 0
INSERT INTO studenty(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie;
ENDPROC
вот, переделал :) работает, вопрос про сохранение пути если можно объясните поподробнее
...
Рейтинг: 0 / 0
экспорт файлов
    #37276017
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123IgorNG,
CLOSE DATABASES ALL
use (ADDBS(allt(thisform.text1.value))+ 'studenty') in 0
use (ADDBS(allt(thisform.text2.value))+ 'zayvlenie') in 0
INSERT INTO studenty(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie;
ENDPROC
вот, переделал :) работает, вопрос про сохранение пути если можно объясните поподробнее

Что значит "сохранение пути"? У тебя таблицы лежат всегда в одном месте? Или все время в разных? И я бы пользователям не доверил выбор таблиц при такой операции, как копирование данных из одной таблицы в другую. Чревато это
...
Рейтинг: 0 / 0
экспорт файлов
    #37276036
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IgorNGjk00123IgorNG,
CLOSE DATABASES ALL
use (ADDBS(allt(thisform.text1.value))+ 'studenty') in 0
use (ADDBS(allt(thisform.text2.value))+ 'zayvlenie') in 0
INSERT INTO studenty(im_stud, ot_stud, fam_stud);
SELECT im, fam, otch FROM zayvlenie;
ENDPROC
вот, переделал :) работает, вопрос про сохранение пути если можно объясните поподробнее

Что значит "сохранение пути"? У тебя таблицы лежат всегда в одном месте? Или все время в разных? И я бы пользователям не доверил выбор таблиц при такой операции, как копирование данных из одной таблицы в другую. Чревато это

Этим должен заниматься админ + в руководстве будет подробно расписано когда нужно переносить данные, вопрос еще вот какой:
записи добавляются в конец таблицы, и у меня уже собрался такоой вот неплохой списочек записей-клонов только по коду различаются, а как допустим пропустить добавление записей, которые отличаются только кодом, ну допустим key_stud - код в таблице studenty добавляем записи Пупкин Федор Васильевич, там дата рождения, паспортные данные, контактная информация... а мы добавляем из таблицы zayvlenie такого же, только там код - kod и получается что мы добавили того же человека, только он у нас будет под номером 1 и под номером 2 например, как этого избежать?
...
Рейтинг: 0 / 0
экспорт файлов
    #37276043
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123,

Вообще-то сначалу продумывают логику построения приложения, а не копируют данные из одной таблицы в другую, а потом возникает масса вопросов. В данном случае в итоге - 2 дня потерянного времени. И не только твоего.
...
Рейтинг: 0 / 0
экспорт файлов
    #37276489
rock-n-roll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CREATE CURSOR studenty(kod N( 2 ),Fio C( 10 ), dat D)
INSERT INTO   studenty(kod,fio,dat)values( 1 ,'ИВАНОВ', {^ 2011 - 01 - 01 })
INSERT INTO   studenty(kod,fio,dat)values( 2 ,'ПЕТРОВ', {^ 2011 - 02 - 01 })
INSERT INTO   studenty(kod,fio,dat)values( 3 ,'СИДОРОВ',{^ 2011 - 03 - 01 })

CREATE CURSOR zayvlenie(kod N( 2 ),Fio C( 10 ), dat D)
INSERT INTO   zayvlenie(kod,fio,dat)values( 5 ,'ИВАНОВ', {^ 2011 - 01 - 01 })
INSERT INTO   zayvlenie(kod,fio,dat)values( 6 ,'ПЕТРОВ', {^ 2011 - 02 - 01 })
INSERT INTO   zayvlenie(kod,fio,dat)values( 7 ,'СИДОРОВ',{^ 2011 - 04 - 01 })

*т.е. должен быть добавлен последний СИДОРОВ т.к. у него дата другая

INSERT INTO studenty SELECT * FROM zayvlenie WHERE NOT EXIST (SELECT * FROM studenty WHERE studenty.fio==zayvlenie.fio AND studenty.dat==zayvlenie.dat)
SELECT studenty
BROWSE last
вообще задача довольно банальная... можно было и поиском пошуршать
...
Рейтинг: 0 / 0
экспорт файлов
    #37276774
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CLOSE DATABASES ALL
use (ADDBS(allt(thisform.text1.value))+ 'studenty') in 0
use (ADDBS(allt(thisform.text2.value))+ 'zayvlenie') in 0
INSERT INTO studenty(key_group, im_stud, ot_stud, fam_stud, dat_rozh, pasp_dan, tel_stud, adress_stud);
SELECT kod_spec, im, otch, fam, Data_rogd, rtrim(Seriy) + " " + rtrim(Nomer), Telefon, adres FROM zayvlenie;
ENDPROC
key_group и kod_spec - ключевые поля, остальные соответствуют друг другу, Seriy и nomer должны складываться в серию и номер паспорта в поле pasp_dan, выдает ошибку function argument value, type or count is invalid
...
Рейтинг: 0 / 0
экспорт файлов
    #37277044
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
разобрался, что ошибка в том, как я объединяю поля
rtrim(Seriy) + " " + rtrim(Nomer) подскажите, что я не так пишу???
...
Рейтинг: 0 / 0
экспорт файлов
    #37277060
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123,

ты уверен, что ошибка здесь?
Foxpro говорит, что не совпадают типы данных. Вот и проверь.
...
Рейтинг: 0 / 0
экспорт файлов
    #37277106
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
IgorNG,

уверен, удаляю эти поля из выборки - все работает
...
Рейтинг: 0 / 0
экспорт файлов
    #37277118
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123IgorNG,

уверен, удаляю эти поля из выборки - все работает
Посмотри какой тип полей Seriy и Nomer. Должно быть символьное, RTRIM() другие типы не понимает.
...
Рейтинг: 0 / 0
экспорт файлов
    #37277128
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все, спасибо, поменял типы полей, заработало
...
Рейтинг: 0 / 0
экспорт файлов
    #37277721
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jk00123все, спасибо, поменял типы полей, заработало
Везет человеку, не полезло поле в функцию, сменил тип и все работает
...
Рейтинг: 0 / 0
экспорт файлов
    #37277986
jk00123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T,

Неправда, просто поля не вычисляемые и используются только как справочная информация, так зачем им присваивать числовой тип? :)
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / экспорт файлов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]