powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Передача данных по ссылке из массива
4 сообщений из 4, страница 1 из 1
Передача данных по ссылке из массива
    #34621793
Давно уже не брал в руки "шашек" (т.е. Фокса), подзабыл...
В общем, суть проблемы в следующем:
Среда программирования: VFP 6.0
Мне необходимо из процедуры получить набор данных (два значения). Я решил это сделать передав по ссылке локальный (private) массив:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
* Фрагмент реальной программы
...
private myMass( 2 )
declare myMass( 2 )
store "" to myMass
=form_dtopl(stroka,kind,@myMass)
dtopl=myMass( 1 )
gr=myMass( 2 )
...

procedure form_dtopl
parameters stroka,kind,resmas
...
resmas( 2 )=""
resmas( 1 )=dtoc( date(val(substr(stroka, 3 , 4 )),val(substr(stroka, 1 , 2 )), 1 ) )
return
При компиляции в ехе-шник Фокс ругается на нераспознанную переменную resmas (Unknown RESMAS - Undefined) и, соответственно, не отрабатывает процедуру form_dtopl (проверяю по данным, записанным в таблицу).

В то же самое время прекрасно выполняется в design-mode следующий фрагмент:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
* Тестовый пример
private myMas( 2 )
declare myMas( 2 )
store "" to myMas
=form_dtopl("042007", 3 ,@myMas)
? myMas( 1 ),";",iif(empty(MyMas( 2 )),"NULL",myMas( 2 ))
return

procedure form_dtopl
parameter stroka,kind,resmas
...
  resmas( 2 )=""
  resmas( 1 )=dtoc( date(val(substr(stroka, 3 , 4 )),val(substr(stroka, 1 , 2 )), 1 ) )
return

Может кто-нибудь подскажет в чем тут дело? Как исправить мне данную ситуацию.
...
Рейтинг: 0 / 0
Передача данных по ссылке из массива
    #34621854
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Чтобы не ругалось при компиляции:

Код: plaintext
1.
2.
procedure form_dtopl
parameters stroka,kind,resmas
external array resmas
...
Рейтинг: 0 / 0
Передача данных по ссылке из массива
    #34621873
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторprivate myMass(2)
declare myMass(2)
В FoxPro можно оставить одну из этих строк...

(Но решение Вашей проблемы было дано выше)
...
Рейтинг: 0 / 0
Передача данных по ссылке из массива
    #34621953
Sergey Sizov.Чтобы не ругалось при компиляции:

Код: plaintext
1.
2.
procedure form_dtopl
parameters stroka,kind,resmas
external array resmas


Many Thanks!!! Все гениальное просто!!!
Знал ведь это из С++, но не думал, что в Фоксе такое есть...
Хотя мои знания на 99,999% основаны на FPD...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Передача данных по ссылке из массива
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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